“Spring Boot 常见注解”的版本间的差异
跳到导航
跳到搜索
Jihongchang(讨论 | 贡献) (→@Bean) |
Jihongchang(讨论 | 贡献) |
||
第15行: | 第15行: | ||
可以是 bean 从定义到注册之前以编程方式确定的任何状态。 | 可以是 bean 从定义到注册之前以编程方式确定的任何状态。 | ||
+ | |||
+ | 如果 @Configuration 类标有 @Conditional,则与该类关联的所有@Bean 方法、@Import 注释和@ComponentScan 注释都将受制于条件。 | ||
+ | |||
2023年1月31日 (二) 02:01的版本
@Bean
spring-context-x.x.x.jar 中的注解
https://docs.spring.io/spring-javaconfig/docs/1.0.0.M4/reference/html/ch02s02.html
@Bean 是一个方法级注释,是 XML <bean/> 元素的直接模拟。
@Conditional
spring-context-x.x.x.jar 中的注解
https://docs.spring.io/spring-framework/docs/5.3.1/javadoc-api/
表示组件只有在所有指定条件都匹配时才有资格注册。
可以是 bean 从定义到注册之前以编程方式确定的任何状态。
如果 @Configuration 类标有 @Conditional,则与该类关联的所有@Bean 方法、@Import 注释和@ComponentScan 注释都将受制于条件。
@ConditionalOnClass
只有当指定的类在类路径上时才匹配。
@ConditionalOnMissingBean
仅当指定的 bean 类和/或名称尚未包含在 BeanFactory 中时才匹配。
@ConditionalOnProperty
条件检查指定的属性是否具有特定值。
默认情况下,属性必须存在于环境中并且不等于 false。
havingValue() 和 matchIfMissing() 属性允许进一步定制。