SpringBoot 2x 系列之(三)容器功能
容器功能
1. 组件添加
1.1 @Configuration结合@Bean注册组件
@Configuration 见 Spring.md 8.4.1 @Configuration
1.2 @Component、@Controller、@Service、@Repository
见 Spring.md 相关内容
1.3 @ComponentScan
见 Spring.md 8.4.2 @ComponentScan
1.4 @Import
见 Spring.md 8.4.5 @Import---多个配置类的读取注解配置
1.5 @Conditional
见 Spring.md 8.4.7 @Conditional
2. 原生配置文件引入
2.1 @ImportResource
见 Spring.md 8.4.8 @ImportResource
3. 配置绑定
将配置文件(properties等)中的配置对应绑定到JavaBean的属性中,SpringBoot提供了以下几种方式
只能跟SpringBoot固定的主配置文件(application.properties/yaml/yml)进行绑定
注:只有在容器中的组件,才会拥有SpringBoot提供的强大功能,所以必须将@ConfigurationProperties标注的类注册到容器中
3.1 @Component + @ConfigurationProperties
@Component和@ConfigurationProperties都要标注在JavaBean上
@ConfigurationProperties的prefix属性要传入配置文件中配置项的前缀
3.2 @EnableConfigurationProperties + @ConfigurationProperties
@EnableConfigurationProperties标注在配置类上,@ConfigurationProperties标注在JavaBean上
@ConfigurationProperties的prefix属性要传入配置文件中配置项的前缀,@EnableConfigurationProperties的value属性传入JavaBean的Class,可以是多个
这里的@EnableConfigurationProperties实现了两个功能:
- 开启Car与核心配置文件中配置项的配置绑定功能
- 把这个Car这个组件自动注册到容器中
多用于JavaBean在第三方jar包中的情况,因为这种情况下我们无法在第三方jar中的JavaBean上标注@Component
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术