starter大全
| 序号 | Starter包 | 依赖包 |
|---|---|---|
| 1 | spring-boot-starter |
|
| 2 | spring-boot-starter-logging |
|
| 3 | spring-boot-starter-web |
|
| 4 | spring-boot-starter-json |
|
| 5 | spring-boot-starter-tomcat |
|
| 6 | spring-web |
|
| 7 | spring-webmvc |
示例:spring-boot-starter-web
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>3.5.11</version>
<scope>compile</scope>
</dependency>
一、核心基础依赖
1. spring-boot-starter
👉 最基础的启动器(必须有)
作用:
- 自动配置(Auto Configuration)
- 组件扫描(Component Scan)
- Spring Boot 基础运行环境
2. spring-boot-starter-parent
👉 父工程(Maven)
作用:
- 统一依赖版本(避免冲突)
- 提供默认插件配置(如打包、编译)
3. spring-boot-starter-test
👉 测试依赖
作用:
- 集成 JUnit、Mockito、AssertJ
- 支持 Spring 测试上下文
二、Web开发相关
4. spring-boot-starter-web
👉 最常用(Web项目必备)
作用:
- 内嵌 Tomcat(默认)
- Spring MVC(REST接口开发)
- JSON处理(Jackson)
适用于:
- API服务
- 后端系统
5. spring-boot-starter-webflux
👉 响应式 Web(异步非阻塞)
作用:
- 基于 Reactor
- 支持高并发、流式处理
适用于:
- 高并发系统
- 实时数据流(如网关)
三、数据库与持久化
6. spring-boot-starter-data-jpa
👉 JPA(ORM框架)
作用:
- 基于 Hibernate
- 简化数据库操作(CRUD自动化)
7. spring-boot-starter-jdbc
👉 原生 JDBC 支持
作用:
- 使用 JdbcTemplate 操作数据库
- 更灵活、性能更可控
8. mybatis-spring-boot-starter
👉 MyBatis 集成
作用:
- SQL可控(适合复杂查询)
- Mapper接口自动实现
四、微服务 & 中间件
9. spring-boot-starter-actuator
👉 监控与运维核心组件(强烈推荐)
作用:
- 健康检查(/actuator/health)
- 指标监控(CPU、内存、线程)
- 应用信息暴露
10. spring-boot-starter-security
👉 安全框架
作用:
- 登录认证
- 权限控制(RBAC)
- 防止常见攻击(CSRF等)
11. spring-boot-starter-validation
👉 参数校验
作用:
- 基于 Hibernate Validator
- 注解校验(@NotNull、@Size等)
五、缓存与消息
12. spring-boot-starter-cache
👉 缓存抽象
作用:
- 支持 Redis、EhCache、Caffeine
- 简化缓存逻辑
13. spring-boot-starter-data-redis
👉 Redis 集成
作用:
- 分布式缓存
- 分布式锁
- Session共享
14. spring-boot-starter-amqp
👉 RabbitMQ 消息队列
作用:
- 异步处理
- 解耦系统
15. spring-boot-starter-kafka
👉 Kafka 集成
作用:
- 高吞吐消息流处理
- 日志、流式计算
六、日志与配置
16. spring-boot-starter-logging
👉 默认日志系统
作用:
- Logback + SLF4J
- 自动日志配置
17. spring-boot-configuration-processor
👉 配置提示工具
作用:
- application.yml 自动提示(IDE支持)
- 提升开发体验
七、模板与视图(较少用)
18. spring-boot-starter-thymeleaf
👉 服务端模板引擎
作用:
- 渲染 HTML 页面
- MVC 模式
八、常见组合(实战推荐)
✅ 后端管理系统(最常见)
spring-boot-starter-web spring-boot-starter-data-jpa 或 mybatis spring-boot-starter-validation spring-boot-starter-security spring-boot-starter-actuator spring-boot-starter-data-redis
✅ 微服务基础
spring-boot-starter-web spring-boot-starter-actuator spring-boot-starter-security spring-boot-starter-data-redis spring-boot-starter-amqp 或 kafka
✅ 高并发系统
spring-boot-starter-webflux spring-boot-starter-data-redis spring-boot-starter-actuator
九、核心理解(重点)
Spring Boot Starter 的本质是:
👉 “约定优于配置” + 自动装配
它帮你解决了:
- 依赖冲突
- 配置复杂
- 框架整合难
十、给你一个建议(结合你在做的系统)
你之前说要做 IT运维管理系统 + AI开发体系,建议依赖组合:
👉 推荐技术栈:
- Web:spring-boot-starter-web
- ORM:MyBatis / Xbatis
- 缓存:Redis
- 监控:Actuator
- 安全:Security(后期加)
- 日志:默认即可
AI给你一套 Spring Boot 3 + MySQL + Redis + Xbatis(或 MyBatis) 的企业级基础依赖 + 分层结构 + 最小可运行模板思路。
完整 pom.xml(推荐基线)
👉 适用于:后台系统 / 运维平台 / API服务
<project xmlns="http://maven.apache.org/POM/4.0.0">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>it-ops-system</artifactId>
<version>1.0.0</version>
<!-- Spring Boot 3 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.2.5</version>
</parent>
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<!-- Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 参数校验 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!-- AOP(日志、审计) -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!-- 数据库 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- MyBatis(或换成 Xbatis) -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
<!-- MySQL 驱动 -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<scope>runtime</scope>
</dependency>
<!-- Redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 缓存 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
<!-- 监控 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- JSON增强 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<!-- 配置提示 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<!-- Lombok(可选) -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!-- 测试 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
</dependencies>
</project>