### 系统要求
● Java 8 & 兼容java14 .
● Maven 3.3+
### 修改maven配置
找到maven的配置文件(根据你自己本地下安载的maven路径)
`F:\maven\apache-maven-3.9.2-bin\apache-maven-3.9.2\conf\settings.xml`
这里我们主要修改两段配置:
* mirrors 替换为阿里云镜像
* profiles 使用jdk1.8进行编译
```bash
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
```
### HelloWorld
需求:浏览发送/hello请求,响应 Hello,Spring Boot
### 确认Idea的Maven配置
![](https://img.kancloud.cn/bc/0b/bc0b430baa99823ad769a38a1c56295e_1472x518.png =1000x)
这里指定我们自己安装的maven,和maven配置文件settings.xml
### 创建Maven项目
Idea -- new project -- Maven
![](https://img.kancloud.cn/3e/a9/3ea9037b71a50863b43dc57870b187a3_1164x539.png =1000x)
### pom.xml配置
1.导入springboot父工程:
```bash
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.13</version>
</parent>
```
2.添加web依赖
```bash
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
```
添加了web依赖后,可以看到idea左侧面板的External Libraries中多了很多jar包,这些都是跟web开发相关的依赖。
![](https://img.kancloud.cn/9e/50/9e50b08b051029974fed9800e9118940_705x586.png =1000x)
同时,我们也可以通过idea的右侧面板的Maven选项卡中查看到下载的依赖列表:
![](https://img.kancloud.cn/4a/86/4a86873ca25ae2ea05295a99f2ff6112_859x395.png =1000x)
**完整的pom.xml代码示例**:
```bash
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.maxiaoke</groupId>
<artifactId>boot-01-helloworld</artifactId>
<version>1.0-SNAPSHOT</version>
<!--导入SpringBoot父工程-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.13</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
```
### 编写SpringBootApplication入口类
package:
`com.maxiaoke.boot`
class:
`MainApplication`
![](https://img.kancloud.cn/86/a2/86a23b94c628bae9d69e0285a0c4c044_521x168.png =1000x)
`src/main/java/com/maxiaoke/boot/MainApplication.java`
```bash
package com.maxiaoke.boot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* 主程序类
* @SpringBootApplication 这是一个SpringBoot应用
*/
@SpringBootApplication
public class MainApplication {
//主方法
public static void main(String[] args) {
SpringApplication.run(MainApplication.class,args);
}
}
```
### 创建控制器类
![](https://img.kancloud.cn/b5/68/b568844835649ed085015c923e9526f2_481x242.png =1000x)
`src/main/java/com/maxiaoke/boot/controller/HelloController.java`
```bash
package com.maxiaoke.boot.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
//@Controller
//@ResponseBody
/**
* @RestController是@Controller与ResponseBody的合体
* 直接将字符串返回给浏览器
*/
@RestController
public class HelloController {
@RequestMapping("/hello")
public String handle01() {
return "Hello SpringBoot.";
}
}
```
### 运行应用
运行入口类的main方法:
![](https://img.kancloud.cn/f7/73/f77319e2b4c7ac3808739a607c967451_894x333.png =1000x)
查看控制台默认启动的8080端口:
![](https://img.kancloud.cn/e2/bb/e2bbc4252c11caf1002c36b3b6dca665_1427x366.png =1000x)
通过浏览器访问 localhost:8080 查看
![](https://img.kancloud.cn/80/fb/80fb97685d7b24fb8501db1139f934c0_536x222.png =1000x)
- SpringBoot的生态
- 为什么使用SpringBoot ?
- SpringBoot所处的时代背景
- SpringBoot入门
- SpringBoot配置文件
- SpringBoot简化部署-打jar包
- SpringBoot依赖管理
- SpringBoot自动配置
- SpringBoot容器功能
- SpringBoot应用应该如何编写
- SpringBoot插件-Lombok
- SpringBoot-dev-tools
- SpringBoot-Spring Initializr
- SpringBoot配置文件-yml
- SpringMVC配置概览
- SpringBoot静态资源访问
- SpringBoot欢迎页与Favicon
- SpringBoot静态资源配置原理
- SpringBoot请求参数处理
- SpringBoot普通参数与基本注解
- 模板引擎-Thymeleaf用法介绍
- SpringBoot使用Thymeleaf
- 后台管理系统-登录页面整合
- 后台登录逻辑处理
- 抽取公共页面-leftbar、header
- 公共页面完善
- 动态表格遍历
- 拦截器-登录验证
- 文件上传功能
- 自定义错误处理
- 数据访问-JDBC
- 使用Druid数据源
- 整合Mybatis
- 整合Mybatis-Plus
- 使用MybatisPlus完成CRUD功能
- 数据列表分页功能
- 用户删除功能
- SpringBoot整合Redis
- Redis统计url访问功能
- SpringBoot单元测试
- 单元测试-常用注解
- 单元测试-断言
- SpringBoot指标监控
- 监控可视化整合
- SpringBoot-Profile功能
- SpringBoot原理解析
- 项目代码仓库地址