在Spring中,“ 通过构造器自动装配 ”实际上是通过构造器参数中的Type自动 装配 。 这意味着,如果Bean的数据类型与其他Bean构造函数参数的数据类型相同,则将其自动连线。
查看构造函数自动装配Spring的完整示例。
1.豆类
两个bean,开发人员和语言。
package com.mkyong.common;
public class Developer {
private Language language;
//autowire by constructor
public Developer(Language language) {
this.language = language;
}
//...
}
package com.mkyong.common;
public class Language {
private String name;
//...
}
2.弹簧接线
通常,您通过这样的构造函数连接bean:
<bean id="developer" class="com.mkyong.common.Developer">
<constructor-arg>
<ref bean="language" />
</constructor-arg>
</bean>
<bean id="language" class="com.mkyong.common.Language" >
<property name="name" value="Java" />
</bean>
输出量
Developer [language=Language [name=Java]]
启用通过构造函数自动装配时 ,可以不设置构造函数属性。 Spring将找到兼容的数据类型并将其自动连线。
<bean id="developer" class="com.mkyong.common.Developer" autowire="constructor" />
<bean id="language" class="com.mkyong.common.Language" >
<property name="name" value="Java" />
</bean>
输出量
Developer [language=Language [name=Java]]
下载源代码
下载它– Spring-AutoWiring-by-Constructor-Example.zip (6 KB)
参考文献
翻译自: https://mkyong.com/spring/spring-autowiring-by-constructor/