Spring注解(三):自动装配

本文详细介绍了Spring框架中的自动装配机制,包括@Autowired、@Qualifier、@Primary等注解的使用方式及优先级,同时探讨了@Resource和@Inject注解的替代方案,并讲解了如何通过@Profile根据环境动态激活和切换组件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

13、自动装配:
【13-1】@Autowired:自动注入(推荐使用);可以在构造器(如果组件只有一个有参构造器,这个有参构造器的@Autowired可以省略,参数位置的组件还是可以自动从容器中获取)、参数、方法(一般标注在SET方法上)、属性中使用
①默认优先按照类型去容器找对应的组件
②如果找到多个相同类型的组件,再将属性的名称作为组件的id去容器中查找
③默认情况下自动装配一定要将属性赋值好,没有就会报错;可以使用required=false来修改
【13-2】@Qualifier:指定装配的组件
【13-3】@Primary:默认使用首选的bean,但可以被@Qualifier覆盖
【13-4】@Resource[java规范的注解]:可以实现@Autowired的效果,默认是按照组件名称进行装配,但不能支持@Primary和@Autowired(required=false)功能
【13-5】@Inject[java规范的注解]:需要导入javax.inject包,可以实现@Autowired的效果,但没有@Autowired(required=false)功能
【13-6】@Profile:Spring为我们提供的可以根据当前环境,动态的激活和切换一系列组件的功能
①使用命令行动态参数:在虚拟机参数位置加载
-Dspring.profiles.active=test
②使用代码:创建一个applicationContext;设置需要激活的环境;注册主配置类;启动刷新容器



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值