装配是依赖注入的本质,作为开发人员,需要告诉Spring要创建哪些bean并且如何将它们装配在一起。即创建bean之间的依赖关系。
装配方式
- XML显式配置
- JavaConfig显式配置
- 隐式的bean发现机制和自动装配(推荐做法)
实现自动化装配
-
组件扫描:Spring自动发现应用上下文中所创建的bean
@Component:表明该类作为组件类需为该类创建bean。Spring应用上下文中所有的bean都有一个id,默认为第一个字母小写的类名,也可通过@component("xxid")来手动指定。
@ComponentScan:表示启动组件扫描,默认不启动,需要在xml或JavaConfig中显式配置。此外,默认扫描与配置文件相同的包,也可通过@component(任意个包名)来指定扫描包。 -
自动装配:Spring自动满足扫描到的bean之间的依赖
@Autowired:实现自动装配。可用在任何方法上,如构造函数、set函数
显示装配
即通过XML或JavaConfig装配。
应用场景:要将第三方库中的组件装配到你的应用中,在这种情况下,是没有办法在它的类上添加@component和@Autowired的。
JavaConfig装配:创建添加@Configuration的类,表明该类是一个配置类,应该包含在Spring应用上下文中如何创建bean的细节。使用@Bean声明bean
XML装配:创建以<beans>元素为根的XML。通过<bean>声明bean
网友评论