目录
[2.1 IDEA版本要求](#2.1 IDEA版本要求)
[2.2 安装Spring Boot Helper插件(社区版必装)](#2.2 安装Spring Boot Helper插件(社区版必装))
[3.1 什么是Maven?](#3.1 什么是Maven?)
[3.2 Maven核心功能](#3.2 Maven核心功能)
[3.3 配置国内源(提速必备)](#3.3 配置国内源(提速必备))
[4.1 使用IDEA创建](#4.1 使用IDEA创建)
[4.2 项目结构一览](#4.2 项目结构一览)
[4.3 核心注解解析](#4.3 核心注解解析)
[五、编写第一个接口:Hello World](#五、编写第一个接口:Hello World)
[5.1 创建Controller](#5.1 创建Controller)
[5.2 启动并访问](#5.2 启动并访问)
[5.3 请求响应流程解析](#5.3 请求响应流程解析)
[6.1 404 Not Found](#6.1 404 Not Found)
[6.2 500 Internal Server Error](#6.2 500 Internal Server Error)
[6.3 连接失败(Connection Refused)](#6.3 连接失败(Connection Refused))
[7.1 修改端口号](#7.1 修改端口号)
[7.2 热部署(开发利器)](#7.2 热部署(开发利器))
[7.3 多环境配置](#7.3 多环境配置)
从零开始,一步步掌握SpringBoot的核心用法,轻松搭建出属于自己的第一个Web应用。
一、为什么要学SpringBoot?
SpringBoot是Spring框架的"脚手架",它的诞生就是为了简化Spring程序的开发。打个比方:以前盖房子要自己搬砖、和水泥,效率低还容易出错;现在有了脚手架,直接站在架子上干活,又快又稳。
SpringBoot带来的核心好处:
-
快速集成:添加依赖就能用,省去繁琐的XML配置
-
内置Tomcat:无需额外配置Web服务器,一键运行
-
约定大于配置:默认规则帮你省掉大量样板代码
-
生态丰富:与Spring全家桶无缝衔接
二、环境准备
2.1 IDEA版本要求
社区版要求2021.1至2022.1.4版本,专业版无要求。如果IDEA版本不在这个范围,建议卸载重装,注意一定要删除注册表。
2.2 安装Spring Boot Helper插件(社区版必装)
专业版IDEA自带Spring Initializr,社区版需要手动安装插件。
步骤:
-
访问插件官网,选择对应IDEA版本的免费版下载
-
IDEA中通过File -> Settings -> Plugins -> 安装本地插件
-
重启IDEA
三、Maven项目管理工具
3.1 什么是Maven?
Maven是一个项目管理工具,通过pom.xml文件自动管理依赖(jar包),再也不用手动下载和添加了。
3.2 Maven核心功能
项目构建:提供标准化的构建流程,包括编译、测试、打包、发布。
常用命令:
-
mvn clean:清理
-
mvn compile:编译
-
mvn test:测试
-
mvn package:打包成jar或war
依赖管理:只需在pom.xml中配置依赖坐标,Maven就会自动下载并引入jar包,还会自动处理依赖传递。
例如引入MySQL驱动:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
3.3 配置国内源(提速必备)
中央仓库在国外,下载速度较慢。换成阿里云镜像可以大幅提升下载速度。
修改settings.xml文件,添加以下内容:
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
同时记得配置新项目的Settings,这样以后创建的项目都会自动使用国内源。
四、创建第一个SpringBoot项目
4.1 使用IDEA创建
-
File -> New -> Project -> Spring Initializr
-
填写项目信息:Group设为com.example,Artifact设为demo,Java Version选择17
-
选择SpringBoot版本(推荐3.x)
-
添加依赖:勾选Spring Web
-
点击Finish,等待下载完成
4.2 项目结构一览
demo/
├── src/
│ ├── main/
│ │ ├── java/com/example/demo/
│ │ │ └── DemoApplication.java 启动类
│ │ └── resources/
│ │ ├── static/ 静态资源(CSS/JS/HTML)
│ │ ├── templates/ 模板文件
│ │ └── application.properties 配置文件
│ └── test/
├── pom.xml Maven配置文件
└── target/ 编译输出目录
4.3 核心注解解析
@SpringBootApplication
// 这是一个组合注解,包含以下三个:
// @SpringBootConfiguration:声明配置类
// @EnableAutoConfiguration:开启自动配置
// @ComponentScan:开启组件扫描
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
五、编写第一个接口:Hello World
5.1 创建Controller
在com.example.demo包下新建UserController.java:
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class UserController {
@RequestMapping("/sayHi")
public String sayHi() {
return "Hello, SpringBoot!";
}
}
5.2 启动并访问
-
运行DemoApplication的main方法
-
打开浏览器,访问 http://127.0.0.1:8080/sayHi
-
页面显示 Hello, SpringBoot!
5.3 请求响应流程解析
浏览器输入URL后,DNS解析域名为127.0.0.1(本机),通过端口8080找到Tomcat服务器,路径/sayHi匹配到UserController.sayHi()方法,执行方法后返回字符串,浏览器渲染显示。
六、常见错误排查指南
6.1 404 Not Found
原因:访问的资源不存在。
排查步骤:
-
检查URL是否拼写正确
-
检查注解是否写错,如@RequestMapping写成@RequesMapping
-
检查Controller是否被Spring扫描到
6.2 500 Internal Server Error
原因:服务器代码执行异常。
解决方法:查看控制台日志,找到异常堆栈,根据提示定位到具体代码行。例如出现ArithmeticException: / by zero,检查除法运算。
6.3 连接失败(Connection Refused)
原因:Tomcat未启动或端口被占用。
排查步骤:
-
检查启动日志是否有报错
-
使用netstat -ano | findstr :8080检查端口是否被占用
-
检查防火墙是否拦截
七、进阶技巧
7.1 修改端口号
在application.properties中配置:
server.port=9090
7.2 热部署(开发利器)
添加依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
修改代码后自动重启,告别手动重启的烦恼。
7.3 多环境配置
创建不同的配置文件:
-
application-dev.properties:开发环境配置
-
application-prod.properties:生产环境配置
在主配置文件application.yml中激活:
spring:
profiles:
active: dev
八、总结
通过本文的学习,可以掌握:
-
Maven的基本使用和国内源配置
-
SpringBoot项目的创建和结构
-
编写第一个Web接口
-
常见错误的排查方法
SpringBoot的设计理念是约定大于配置,让开发者专注于业务逻辑而非繁琐的配置。掌握了这些基础,就可以继续深入学习Spring全家桶的其他成员了。