默认注入类型 多个同类型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注解控制数组中实现对象的顺序

【Spring】Bean装配类注解的更多相关文章

  1. Spring Bean装配(下)——注解

    @Repository,@Service,@Controller这三个注解是基于component定义的注解 component-scan:组件扫描 base-package:扫描这个下的所有类 &l ...

  2. Spring Bean装配详解(五)

    装配 Bean 的概述 前面已经介绍了 Spring IoC 的理念和设计,这一篇文章将介绍的是如何将自己开发的 Bean 装配到 Spring IoC 容器中. 大部分场景下,我们都会使用 Appl ...

  3. Spring入门篇——第4章 Spring Bean装配(下)

    第4章 Spring Bean装配(下) 介绍Bean的注解实现,Autowired注解说明,基于java的容器注解说明,以及Spring对JSR支持的说明 4-1 Spring Bean装配之Bea ...

  4. 002-Spring4 快速入门-项目搭建、基于注解的开发bean,Bean创建和装配、基于注解的开发bean,Bean初始化销毁、Bean装配,注解、Bean依赖注入

    一.项目搭建 1.项目创建 eclipse→project explorer→new→Project→Maven Project 默认配置即可创建项目 2.spring配置 <dependenc ...

  5. Spring Bean装配笔记

    Spring Bean装配笔记 Spring中的Bean是一个很重要的概念.Spring作为一个Bean容器,它可以管理对象和对象之间的依赖关系,我们不需要自己建立对象,把这部分工作全部转交给容器完成 ...

  6. Spring Bean装配(上)

    Bean:在spring的IOC里面,把配置到IOC容器里面的实体或者是对象都称为Bean Bean配置项 Bean的作用域 Bean的生命周期 Bean的自动装配 Resources&Res ...

  7. Spring入门篇——第3章 Spring Bean装配(上)

    第3章 Spring Bean装配(上) 介绍Bean的作用域.生命周期.Aware接口.自动装配和Resource等内容. 3-1 Spring Bean装配之Bean的配置项及作用域 从上至下依次 ...

  8. Spring课程 Spring入门篇 4-7 Spring bean装配之基于java的容器注解说明--@Scope 控制bean的单例和多例

    1 解析 1.1 bean的单例和多例的应用场景 1.2 单例多例的验证方式 1.3 @Scope注解单例多例应用 2 代码演练 2.1 @Scope代码应用 1 解析 1.1 bean的单例和多例的 ...

  9. Spring课程 Spring入门篇 4-6 Spring bean装配之基于java的容器注解说明--@ImportResource和@Value java与properties文件交互

    1 解析 1.1 这两个注解应用在什么地方 1.2 应用方式 1.3 xml方式实现取值 2 代码演练 2.1 @ImportResource和@Value代码演练 1 解析 1.1 这两个注解应用在 ...

  10. Spring课程 Spring入门篇 4-3 Spring bean装配(下)之Autowired注解说明2 集合运用

    课程链接: 本节主要讲了以下几块内容 1 注解相关解析 2 代码演练 集合for循环的使用 2.1 list集合应用 2.2 map集合应用 2.3 集合排序(只对list有效,对map无效(list ...

随机推荐

  1. 编码器-解码器 | 基于 Transformers 的编码器-解码器模型

    基于 transformer 的编码器-解码器模型是 表征学习 和 模型架构 这两个领域多年研究成果的结晶.本文简要介绍了神经编码器-解码器模型的历史,更多背景知识,建议读者阅读由 Sebastion ...

  2. Mongodb--用户/权限

    mongodb分为管理员用户和普通用户,并且还有个验证库,建立用户时use到的库(验证库),信息就存储在admin数据库下. 在使用用户时,要加上验证库才能登录,对于管理员用户,必须在admin下创建 ...

  3. SELinux 入门 pt.2

    哈喽大家好,我是咸鱼 在<SELinux 入门 pt.1>中,咸鱼向各位小伙伴介绍了 SELinux 所使用的 MAC 模型.以及几个重要的概念(主体.目标.策略.安全上下文) 我们还讲到 ...

  4. 绿色数治开采工艺: 3D 可视化智慧矿山

    前言 2021 年 2 月底,国家矿山安监局综合司发布的<"十四五"矿山安全生产规划(征求意见稿)>中再次强调要"实时采集矿山安全监控.人员位置监测.视频监控 ...

  5. 你真的了解MySQL日期函数吗?

    MySQL提供了丰富的日期和时间函数,用于处理和操作日期时间数据.本篇博文将深入介绍一些常用的MySQL日期函数,通过详细的例子带你了解这些函数的用法和实际应用. 1. CURDATE() - 获取当 ...

  6. vue实现文件上传功能

    https://www.jb51.net/article/145500.htm Element中的el-upload使用过程中踩的坑 https://www.jianshu.com/p/c837224 ...

  7. Java 内存管理最佳实践

    本文翻译自国外论坛 medium,原文地址:https://medium.com/@fullstacktips/best-practices-for-memory-management-in-java ...

  8. 《IT项目管理知识》出书了,特点:全是干货

    大纲目录,及内容如下.本书属于付费内容

  9. lucene.net全文检索(二)lucene.net 的封装

    查询 public class LuceneQuery : ILuceneQuery { #region Identity private Logger logger = new Logger(typ ...

  10. java进阶(32)--Collections工具类

    一.简介:Collection与Collections区别 1.Java.until.Collection是集合接口 2.Java.until.Collections是集合工具类,方便集合的操作 二. ...