【Spring】Bean装配类注解

 

默认注入类型 多个同类型Bean 注入失败 依赖 使用目标(@Target)
@AutoWired 通过type

默认首先安装属性名称进行注入

结合@Qualifier注解(value属性)设置注入的Bean

或通过@Primary注解优先选择某个Bean,优先级低于@Qualifier

可以通过required设置为false忽略 Spring
CONSTRUCTOR, METHOD, PARAMETER, FIELD, ANNOTATION_TYPE
@Resource 通过bean名称 通过设置name属性指定Bean,不识别@Primary 报错且不可忽略 javax
TYPE, FIELD, METHOD
@Inject 通过bean名称 没有属性,识别@Primary 报错且不可忽略 javax,需手动导入
METHOD, CONSTRUCTOR, FIELD

 

 

 

 

 

 

 

通过bean名称注入时,如果是@Component,@Service,@Repository注解,默认按首字母小写类名称匹配

补充:

@AutoWired使用:

  • CONSTRUCTOR:用于构造时,可用于函数声明或参数上
  • METHOD:set函数时用于函数声明,用于参数上该方法不会执行;@Bean函数时用于函数声明或参数上均可
  • PARAMETER:见以上两种用法
  • FIELD:常用用法
  • 另外,@AutoWired可以用于数组赋值,比如:DemoService有两个实现类,DemoServiceImpl1和DemoServiceImpl2,可以在参数或函数声明上使用@AutoWired注解后,参数中用 DemoService[] 接收bean对象,可通过@Order注解控制数组中实现对象的顺序
posted @   马儿跑  阅读(90)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示