Java
- 分类
- 后端框架
- 难度
- 未设置
- 来源数
- 1
- 更新时间
- 2026/03/29 15:43
答案
当一个接口有多个实现,且通过@Autowired注入属性,由于@Autowired是通过byType形式,用来给指定的字段或方法注入所需的外部资源。Spring无法确定具体注入的类(有多个实现,不知道选哪个)。当给指定的组件添加@Primary是,默认会注入@Primary配置的组件。
相关题目(5)
元信息
审核状态: active
关联来源: 1
来源面经题(0)
这道题目前没有手动沉淀的面经题来源。
来源(1)
Java八股(框架).md
knowledge_noteQuestion 16: @Primary 注解了解吗?
Source answer: 当一个接口有多个实现,且通过@Autowired注入属性,由于@Autowired是通过byType形式,用来给指定的字段或方法注入所需的外部资源。Spring无法确定具体注入的类(有多个实现,不知道选哪个)。当给指定的组件添加@Primary是,默认会注入@Primary配置的组件。
Reviewed answer: 当同类型 Bean 有多个候选者时,@Primary 可指定默认注入的 Bean,常用于配合 @Autowired 按类型注入时解决歧义。