SpringBoot独有注解

  1. @ConditionalOnBean,仅在当前上下文中存在某个bean时,才会实例化这个Bean。

  2. @ConditionalOnClass,某个class位于类路径上,才会实例化这个Bean。

  3. @ConditionalOnExpression,当表达式为true的时候,才会实例化这个Bean。

  4. @ConditionalOnMissingBean,仅在当前上下文中不存在某个bean时,才会实例化这个Bean。

  5. @ConditionalOnMissingClass,某个class在类路径上不存在的时候,才会实例化这个Bean。

  6. @ConditionalOnNotWebApplication,不是web应用时才会实例化这个Bean。

  7. @AutoConfigureAfter,在某个bean完成自动配置后实例化这个bean。

  8. @AutoConfigureBefore,在某个bean完成自动配置前实例化这个bean。

  9. @ConfigurationProperties(prefix = “spring.datasource”) 注入yml/properties配置文件属性

  10. @ConditionalOnProperty(prefix=”spring.datasource”, name=”enabled”, havingValue=”true”) 控制配置开关的

  11. @SpringBootApplication = (默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan。

  12. @Configuration:提到@Configuration就要提到他的搭档@Bean。使用这两个注解就可以创建一个简单的spring配置类,可以用来替代相应的xml配置文件。 这个注解类标识这个类可以使用Spring IoC容器作为bean定义的来源。@Bean注解告诉Spring,一个带有@Bean的注解方法将返回一个对象,该对象应该被注册为 在Spring应用程序上下文中的bean。

  13. @EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。

  14. @ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller。