在Spring中自动装配Bean的属性

 更新时间:2019年01月08日 15:44:37   作者:李灿辉  
今天小编就为大家分享一篇关于在Spring中自动装配Bean的属性,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

Spring的最基本的能力就是DI,即依赖注入,或控制反转,它可以为Bean注入其依赖的其他Bean。

一个Bean依赖其他Bean一般是通过在Bean中定义其他Bean的成员变量的方式来实现的,那么,Spring的DI也就表现为给Bean的属性自动注入值。

这一般分为以下其中情况。

1,自动注入基本类型。

自动注入基本类型,即当一个Bean有一些基本类型的属性时,例如Stringdoubleint等类型的属性时,我们可以在xml中自动为这些属性注入值。虽然这也成为自动注入的一种,但严格来讲,这种注入并不算是真正意义上的依赖注入,充其量算是一种初始化方式或赋值方式。就一个具有真实意义的可运行系统而言,依赖,主要指的是不同组件,不同类之间相互依赖,协作完成一项工作。从这个角度来讲,DI更应该指的是下面的第2种情况。

自动注入基本类型,通过property标签的value属性来完成。

2,注入其他Bean类型的属性。

即如果一个Bean有另外一个Bean或者说类类型的成员变量,那么我们可以通过DI对该属性进行自动注入。这种情况应该算是真正意义上的自动注入。

注入其他Bean类型的属性,通过property标签的ref属性来完成。

3,注入List类型的属性。

如果一个Bean有一个List类型的属性,那么我们可以在xml中完成对它的注入。至于该属性是基本类型的list还是其他Bean的list,这里都可以支持。

4,注入map类型的属性。

如果一个Bean有一个Map类型的属性,那么我们可以在xml中完成对它的自动注入。

This is the end。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • springboot多模块包扫描问题的解决方法

    springboot多模块包扫描问题的解决方法

    这篇文章主要介绍了springboot多模块包扫描问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Java中字符序列的替换与分解的几种实现方法

    Java中字符序列的替换与分解的几种实现方法

    本文主要介绍了Java中字符序列的替换与分解的几种实现方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • IntelliJ IDEA 2021.1 EAP 4 发布:字体粗细可调整Git commit template 支持

    IntelliJ IDEA 2021.1 EAP 4 发布:字体粗细可调整Git commit template 支持

    这篇文章主要介绍了IntelliJ IDEA 2021.1 EAP 4 发布:字体粗细可调整,Git commit template 支持,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • Java中字符编码格式详解

    Java中字符编码格式详解

    在java应用软件中,会有多处涉及到字符集编码,有些地方需要进行正确的设置,有些地方需要进行一定程度的处理。本文主要给大家讲解java中字符的编码格式等相关问题
    2016-03-03
  • @Value如何设置默认值

    @Value如何设置默认值

    这篇文章主要介绍了@Value如何设置默认值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • java ArrayList和Vector的区别详解

    java ArrayList和Vector的区别详解

    这篇文章主要介绍了java ArrayList和Vector的区别详解的相关资料,并附简单实例代码,需要的朋友可以参考下
    2016-11-11
  • SpringBoot+Redis防止恶意刷新与暴力请求接口的实现

    SpringBoot+Redis防止恶意刷新与暴力请求接口的实现

    这篇文章主要为大家介绍了如何利用springboot和Redis来实现防止恶意刷新与暴力请求接口,文中的示例代码讲解详细,需要的可以参考一下
    2022-06-06
  • Java ArrayList与LinkedList及HashMap容器的用法区别

    Java ArrayList与LinkedList及HashMap容器的用法区别

    这篇文章主要介绍了Java ArrayList与LinkedList及HashMap容器的用法区别,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-07-07
  • SpringBoot实现简易支付宝网页支付功能

    SpringBoot实现简易支付宝网页支付功能

    小编最近实现一个功能基于springboot程序的支付宝支付demo,非常不错适合初学者入门学习使用,今天把SpringBoot实现简易支付宝网页支付功能的示例代码分享给大家,感兴趣的朋友参考下吧
    2021-10-10
  • 导致MyEclipse内存不足的原因分析及解决办法

    导致MyEclipse内存不足的原因分析及解决办法

    这篇文章主要介绍了导致MyEclipse内存不足的原因分析及解决办法的相关资料,需要的朋友可以参考下
    2016-01-01

最新评论