Spring Boot Starter机制

发布时间:2026/7/6 23:54:24

Spring Boot Starter机制 前言在上一篇spring和springboot的关系中提到过springboot是spring的增强用 Starter 起步依赖自动整合依赖、解决版本冲突。这里看看starter是怎么做的。Spring Boot Starter 是自动配置、依赖管理的核心机制目的是让开发者 “开箱即用”不用手动整合依赖和配置。1. 核心原理3 个关键点依赖聚合Starter 把某类功能的所有依赖如 spring-boot-starter-web 包含 Tomcat、Spring MVC、jackson 等打包成一个依赖引入 Starter 就自动引入所有相关依赖避免版本冲突自动配置Starter 内置META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件Spring Boot 2.7指定自动配置类Spring Boot 启动时会扫描这些配置类根据「条件注解」如ConditionalOnClass/ConditionalOnMissingBean自动初始化 Bean约定大于配置Starter 内置默认配置如 Tomcat 端口 8080开发者只需少量配置甚至零配置就能使用功能也可通过application.yml覆盖默认值。2. 举例用spring-boot-starter-redis引入后自动配置 RedisTemplate、Lettuce 连接池只需配置spring.redis.host即可用 Redis自定义 Starter比如封装公司通用的日志 / 监控 Starter只需编写自动配置类放在META-INF目录下其他项目引入就能复用。在项目里我们常用web、redis、mybatis等官方 Starter也会封装自定义的 Starter 复用公司通用逻辑。总结Starter 的核心价值简化依赖管理、自动配置 Bean、降低整合成本关键机制依赖聚合 自动配置类条件注解 约定式配置

相关新闻