🤖 Assistant

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 🌱 SpringBoot 从零入门详解笔记

## 📚 目录
1. [环境准备](#-环境准备)
2. [第一个SpringBoot程序](#-第一个springboot程序)
3. [核心功能详解](#-核心功能详解)
4. [Web开发实践](#-web开发实践)
5. [数据库操作](#-数据库操作)
6. [项目打包部署](#-项目打包部署)
7. [实战:学生管理系统](#-实战项目)

---

## 🔧 环境准备
### 1. 必备工具
- **JDK 17+** [下载地址](https://www.oracle.com/java/)
- **Maven 3.6+** [下载地址](https://maven.apache.org/)
- **IntelliJ IDEA** (推荐) 或 Eclipse

### 2. 快速验证环境
```bash
java -version
mvn -v

🚀 第一个SpringBoot程序

1. 通过脚手架创建项目

访问 start.spring.io 配置:

  • Project: Maven
  • Language: Java
  • Spring Boot: 3.x
  • 勾选 Spring Web
  • 生成并下载压缩包

2. 项目结构说明

1
2
3
4
5
6
7
src/
main/
java/
com/example/demo/
DemoApplication.java # 主启动类
resources/
application.properties # 配置文件

3. 编写第一个接口

1
2
3
4
5
6
7
8
@RestController
public class HelloController {

@GetMapping("/hello")
public String sayHello() {
return "Hello SpringBoot! 🎉";
}
}

4. 启动应用


💡 核心功能详解

1. 自动配置原理

  • 通过 @SpringBootApplication 开启自动配置
  • 查看自动配置报告:management.endpoints.web.exposure.include=*

2. 配置文件

application.yml 示例:

1
2
3
4
5
server:
port: 8888
spring:
application:
name: my-first-boot

3. 常用注解速查

注解 说明
@RestController 组合@Controller+@ResponseBody
@RequestMapping 映射请求路径
@Autowired 自动依赖注入
@Configuration 声明配置类

🌍 Web开发实践

1. 参数接收

1
2
3
4
5
@GetMapping("/user/{id}")
public User getUser(@PathVariable Long id,
@RequestParam String name) {
return new User(id, name);
}

2. 统一响应格式

1
2
3
4
5
6
7
8
9
10
public class Result<T> {
private int code;
private String msg;
private T data;

// 成功静态方法
public static <T> Result<T> success(T data) {
return new Result<>(200, "成功", data);
}
}

3. 异常处理

1
2
3
4
5
6
7
8
@ControllerAdvice
public class GlobalExceptionHandler {

@ExceptionHandler(Exception.class)
public Result<String> handleException(Exception e) {
return Result.error(500, e.getMessage());
}
}

🗃️ 数据库操作

1. 整合MyBatis

  1. 添加依赖:

    1
    2
    3
    4
    5
    <dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>3.0.3</version>
    </dependency>
  2. 配置数据源:

    1
    2
    3
    4
    5
    6
    spring:
    datasource:
    url: jdbc:mysql://localhost:3306/test
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver

📦 项目打包部署

1. 打包为JAR

1
mvn clean package

2. 运行项目

1
java -jar target/demo-0.0.1-SNAPSHOT.jar

🎯 实战项目:学生管理系统

功能列表

  • 学生信息增删改查
  • 分页查询
  • 数据校验
  • Swagger接口文档

技术栈

  • Spring Boot 3.x
  • MyBatis-Plus
  • MySQL
  • Lombok
  • Spring Validation
    ```

💡 提示:本笔记建议配合实际编码练习,学习效果最佳!建议从简单CRUD开始逐步增加功能模块。