注入依赖对象

简介:    两种注解注入依赖对象      @Autowired       @Resource @Autowired 默认按类型装配。 @Resource默认按名称装配,当找不到与名称匹配的bean才会按类型装配。
  
两种注解注入依赖对象
     @Autowired
      @Resource
@Autowired 默认按类型装配。
@Resource默认按名称装配,当找不到与名称匹配的bean才会按类型装配。
    @Autowired
    private PersonDao  personDao;//用于字段上
    @Autowired
    public void setOrderDao(OrderDao orderDao) {//用于属性的setter方法上
        this.orderDao = orderDao;
    }
@Autowired注解是按类型装配依赖对象,默认情况下它要求依赖对象必须存在,如果允许null值,可以设置它required属性为false。如果我们想使用按名称装配,可以结合@Qualifier注解一起使用。如下:
      @Autowired  @Qualifier("personDaoBean")
      private PersonDao  personDao;

@Resource注解和@Autowired一样,也可以标注在字段或属性的setter方法上,但它默认按名称装配。名称可以通过@Resource的name属性指定,如果没有指定name属性,当注解标注在字段上,即默认取字段的名称作为bean名称寻找依赖对象,当注解标注在属性的setter方法上,即默认取属性名作为bean名称寻找依赖对象。
    @Resource(name=“personDaoBean”)
    private PersonDao  personDao;//用于字段上

注意:如果没有指定name属性,并且按照默认的名称仍然找不到依赖对象时, @Resource注解会回退到按类型装配。但一旦指定了name属性,就只能按名称装配了。
相关文章
|
5月前
|
Java 开发者 Spring
Spring中获取Bean对象的三种注入方式和两种注入方法
Spring中获取Bean对象的三种注入方式和两种注入方法
|
Java Spring
创建名为 'authFilterRegistration' 的bean时,该bean依赖于一个未满足的依赖关系
创建名为 'authFilterRegistration' 的bean时,该bean依赖于一个未满足的依赖关系
63 1
|
3月前
|
Java Spring 容器
重写并自定义依赖的原生的Bean方法
重写并自定义依赖的原生的Bean方法
24 5
|
3月前
|
Java Spring 容器
循环依赖问题之实例化Bean是通过如何实现的
循环依赖问题之实例化Bean是通过如何实现的
|
XML Java 数据格式
深入探索Spring的Bean注入:四种方式解析与循环依赖探讨
深入探索Spring的Bean注入:四种方式解析与循环依赖探讨
158 0
|
5月前
|
XML Java 数据格式
怎么通过通过 p 名称空间配置 bean以及怎么去引用/注入其它 bean 对象--ref和怎么去引用/注入内部 bean 对象-内部 bean 对象
怎么通过通过 p 名称空间配置 bean以及怎么去引用/注入其它 bean 对象--ref和怎么去引用/注入内部 bean 对象-内部 bean 对象
71 0
|
容器
什么是依赖注入?有哪些注入方式?
什么是依赖注入?有哪些注入方式?
151 0
|
Java 数据安全/隐私保护 Spring
Spring中实例化Bean的三种方式及作用范围和生命周期
Spring中实例化Bean的三种方式及作用范围和生命周期
|
存储 Java Spring
Spring框架中注入集合对象
你好看官,里面请!今天笔者讲的是在Spring框架中关于注入集合对象的用法(有示例!全网最详细!!) 不懂可以在评论区留言,我看到会及时回复。 注意:本文仅用与学习参考,不可用于商业用途。
806 3
Spring框架中注入集合对象
|
XML 缓存 Java
SpringBean(配置、实例化、作用域、生命周期、装配方式)
SpringBean(配置、实例化、作用域、生命周期、装配方式)
162 0
SpringBean(配置、实例化、作用域、生命周期、装配方式)