在线客服
扫描二维码
下载博学谷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在线课程。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
架构和框架的区别是什么?对比分析
架构和框架的区别是什么?相信问这个问题的一定是新手小白。确实会有人在刚刚入门编程的时候,架构和框架的傻傻分不清。本文就框架和架构的定义、使用、特点等等方面,进行对比分析。
16937
2019-08-14 10:19:24
博学谷常用Java开发框架学什么?
博学谷常用Java开发框架主要学习的Java框架有Spring、SpringMVC、Maven高级、Zookeeper等,掌握框架使用,对企业项目的构建起着关键性的作用,框架规定了应用体系结构,构成了某类特定软件的可复用设计,可以使开发人员只关注软件的业务功能。
7807
2020-04-16 16:09:42
微服务和分布式的区别什么?有什么特点?
微服务设计是为了不因为某个模块的升级和BUG影响现有的系统业务。微服务与分布式的细微差别是,微服务的应用不一定是分散在多个服务器上也可以是同一个服务器。分布式属于微服务,将模块拆分成一个独立的服务单元通过接口来实现数据的交互。分布式和微服的架构很相似,只是部署的方式不一样而已。
6739
2021-03-10 11:10:50
SpringCloud微服务架构需要学习哪些知识点?
Spring Cloud是一系列框架的有序集合。利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发。如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。
5964
2021-03-11 15:18:26
微服务和分布式的联系与区别什么?
微服务和分布式的联系与区别什么?分布式只是一种手段把不同的机器分散在不同的地方,然后这些机器间相互协助完成业务,而微服务是一种特殊的分布式。分布式将一个大的系统划分为多个业务模块,业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互,微服务与分布式的细微差别是微服务的应用不一定是分散在多个服务器上也可以是同一个服务器。
7931
2021-03-26 11:29:43
