1.@Configuration注解
声明当前类是一个配置类,用来替代传统的XML配置文件,被注解的类内部包含了一个或多个被@Bean注解的方法。其中的proxyBeanMethods属性有两个值。
true:表示@Configuration声明的类产生Cglib代理对象,同时保证每个@Bean方法不论被调用多少次,返回的组件都是单实例的。
false:表示@Configuration声明的类产生普通对象,同时每个@Bean方法不论被调用多少次,返回的组件都是新创建的。
2.@Bean注解
在容器中产生对象,默认对象名等于方法名。
3.@ComponentScan注解
用来设置Spring注解搜索的包。
4.@Conditional注解
表示按条件配置,它表示满足Conditional指定的条件时,当前配置生效,执行相应的功能。
@ConditionalOnProperty、@ConditionalOnBean等以@Conditional*开头的注解。
5.@Import注解
给容器创建指定类型的对象,默认组件名为全类名,一般用于导入其他配置类。
6.@ConfigurationProperties注解
把配置的属性绑定到容器对象属性。配置属性绑定支持以下特性:
(1)支持不严格要求属性文件中的属性名与成员变量名一致。支持驼峰、中画线、下画线等转换,甚至支持对象引导。
(2)支持meta-data support。
7.@EnableConfigurationProperties注解
开启配置绑定,把配置绑定的对象注册到容器。在使用@ConfigurationProperties注解绑定属性文件的对象时,对象必须由Spring容器管理,有以下两种方式可以实现:
(1)使用@Component把@ConfigurationProperties配置绑定对象注册到容器。
(2)使用@EnableConfigurationProperties注解开启配置绑定,把配置绑定的对象注册到容器。