在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
所谓的自动装配,就是讲Bean注入到其他Bean的Property中。其定义可以理解为:无须在Spring配置文件中描述JavaBean之间的依赖关系(如配置<property>、<constructor-arg>)。IOC容器会自动建立Javabean之间的关联关系。在Spring框架中共有5种自动装配模式。下面为大家分别说明。
no:这是Spring框架的默认设置,在该设置下自动装配是关闭的,开发者需要自行在bean定义中用标签明确的设置依赖关系。缺省情况下,自动配置是通过“ref”属性手动设定。
byName:该选项可以根据bean名称设置依赖关系。当向一个bean中自动装配一个属性时,容器将根据bean的名称自动在在配置文件中查询一个匹配的bean。如果找到一个bean的名称和其他bean属性的名称是一样的话,就装配这个属性,如果没找到的话就报错。
byType:该选项可以根据bean类型设置依赖关系。当向一个bean中自动装配一个属性时,容器将根据bean的类型自动在在配置文件中查询一个匹配的bean。如果找到一个bean的数据类型是用其它bean属性的数据类型的话,就装配这个属性,如果没找到的话就报错。
constructor:造器的自动装配和byType模式类似,但是仅仅适用于与有构造器相同参数的bean,如果在容器中没有找到与构造器参数类型一致的bean,那么将会抛出异常。
autodetect:该模式自动探测使用构造器自动装配或者byType自动装配。首先,首先会尝试找合适的带参数的构造器,如果找到的话就是用构造器自动装配,如果在bean内部没有找到相应的构造器或者是无参构造器,容器就会自动选择byTpe的自动装配方式。
以上就是为大家介绍的关于spring框架中5种自动装配模式。希望对你的学习有所帮助。博学谷平台有大量免费java基础课程以及优质小课,帮助你学习。同时如果想通过Java学习找到适合自己的工作,也可以参考博学谷Java在线课程。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
十种超实用Java测试框架库
老话说得好:工欲善其事,必先利其器。测试是应用程序生命周期里至关重要的一步,应用程序在进行最后的部署之前,需要通过测试来确保它的负载管理能力以及在特殊情况下的工作条件和工作加载情况。因此,本文例举了十种超实用的Java测试框架库,希望可以帮到大家。
6747
2019-07-05 17:47:32
架构和框架的区别是什么?对比分析
架构和框架的区别是什么?相信问这个问题的一定是新手小白。确实会有人在刚刚入门编程的时候,架构和框架的傻傻分不清。本文就框架和架构的定义、使用、特点等等方面,进行对比分析。
14828
2019-08-14 10:19:24
程序员如何提升为Java架构师?
成为优秀的架构师需要熟悉 Java基础,掌握多线程开发 Callable 和 Future、TCP 原理,NIO、Netty,Dubbo,Spring Cloud,Apollo,Nacos、Maven,IntelliJ IDEA技术等核心知识点。
4586
2020-02-03 14:38:56
Spring AOP应用场景有哪些?Aop工作原理分析
Aop工作原理分析,面向切面编程,是通过代理的方式为程序添加统一功能,集中解决一些公共问题。应用在Debugging 调试、logging, tracing, profiling and monitoring 记录跟踪优化校准场景中。
10008
2020-09-02 11:08:42
微服务和分布式的联系与区别什么?
微服务和分布式的联系与区别什么?分布式只是一种手段把不同的机器分散在不同的地方,然后这些机器间相互协助完成业务,而微服务是一种特殊的分布式。分布式将一个大的系统划分为多个业务模块,业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互,微服务与分布式的细微差别是微服务的应用不一定是分散在多个服务器上也可以是同一个服务器。
5860
2021-03-26 11:29:43