在Spring Boot项目开发中,依赖的选择取决于具体业务需求。以下是常用的依赖分类及说明,涵盖Web开发、数据访问、工具类等场景:
一、核心基础依赖
- 
Spring Web
- 
作用:提供Web开发支持,包含Spring MVC和内置Tomcat服务器,用于处理HTTP请求、路由映射等。
 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> 
 - 
 - 
Spring Boot Starter
- 作用:Spring Boot的核心启动器,提供自动配置、日志、YAML解析等基础功能,其他starter通常依赖它。
 - 说明 :一般无需单独引入,其他starter(如
spring-boot-starter-web)会自动包含。 
 
二、数据访问依赖
- 
MySQL Driver
- 
作用:MySQL数据库驱动,用于连接MySQL数据库。
 - 
Maven坐标 :
xml<dependency> <groupId>com.mysql</groupId> <artifactId>mysql-connector-j</artifactId> <scope>runtime</scope> <!-- 运行时生效 --> </dependency> 
 - 
 - 
MyBatis Framework
- 
作用:轻量级ORM框架,简化数据库操作,支持XML或注解方式编写SQL。
 - 
Maven坐标 :
xml<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>3.0.3</version> <!-- 版本需与Spring Boot兼容 --> </dependency> 
 - 
 - 
Spring Data JPA
- 
作用:基于JPA的持久层框架,通过注解自动生成SQL,简化CRUD操作,适合快速开发。
 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> 
 - 
 - 
Redis
- 
作用:操作Redis缓存数据库,用于提升读取性能(如会话存储、热点数据缓存)。
 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 
 - 
 
三、工具类依赖
- 
Lombok
- 
作用 :通过注解(如
@Data、@Getter)自动生成实体类的getter/setter、构造函数等,减少模板代码。 - 
Maven坐标 :
xml<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> <!-- 避免传递依赖 --> </dependency> - 
注意:需在IDE中安装Lombok插件才能正常使用。
 
 - 
 - 
Spring Boot DevTools
- 
作用:开发工具,支持热部署(修改代码后自动重启),提升开发效率。
 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency> 
 - 
 
四、测试依赖
- Spring Boot Starter Test
- 
作用:整合JUnit、Mockito等测试框架,支持单元测试和集成测试。
 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <!-- 仅测试环境生效 --> </dependency> 
 - 
 
五、安全依赖
- Spring Security
- 
作用:提供身份认证、授权、防CSRF等安全功能,保护接口访问。
 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> 
 - 
 
六、其他常用依赖
- 
Thymeleaf
- 
作用:模板引擎,用于开发动态HTML页面(适合前后端不分离场景)。
 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> 
 - 
 - 
Validation
- 
作用 :提供参数校验功能(如
@NotNull、@Size),简化输入验证逻辑。 - 
Maven坐标 :
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency> 
 - 
 
依赖管理建议
- 使用Spring Initializr创建项目时,可直接勾选所需依赖,工具会自动处理版本兼容性。
 - 避免引入不必要的依赖,减少项目体积和冲突风险。
 - 版本号通常由
spring-boot-dependencies统一管理,无需手动指定(特殊情况除外)。 
根据项目类型(如REST接口服务、后台管理系统、微服务等)选择合适的依赖组合,可显著提升开发效率。