@Configuration
@Bean
@Import
:将多个配置类组装到一个配置类中@ImportResource
:在@Configuration配置类中引入XML配置文件@Lazy
:设置懒加载
标注了@Configuration,说明这个类可用于为Spring提供Bean的定义信息。类的方法处可以标注@Bean注解,Bean的类型由方法返回值类型决定,名称默认和方法名相同,也可通过入参显示指定Bean名称,如@Bean(name=”userDao”)。
如果Bean在多个@Configuration配置类中定义,如何引用不同配置类中定义的Bean呢?
由于@Configuration注解类本身已经标注了@Component注解,所以任何标注了@Configuration的类,本身也相当于注解了@Component,即它们可以像普通的Bean一样被注入到其他Bean中。
在@Bean处,可以标注@Scope注解以控制Bean的作用范围。
由于Spring容器会自动对@Configuration的类进行“改造”,以植入Spring容器对Bean的管理逻辑,所以使用基于Java类的配置必须保证将Spring AOP类包和CGLIB类包加载到类路径下。