嗨,我是 Springs 框架的新手,我只想知道 Autowiring 在 Spring 框架中到底做了什么?
问问题
356 次
1 回答
0
考虑一个没有首先自动装配的 Spring bean 的示例。
例如考虑一个类客户
class Customer {
private Person person;
public Customer(Person person) {
this.person = person;
}
public void setPerson(Person person) {
this.person = person;
}
}
和类人
class Person {
}
在spring bean配置文件中,条目将是,
<bean id="customer" class="...Customer>
<property name="person" ref="person" />
</bean>
<bean id="person" class="...Person" />
使用 spring bean 自动装配,您可以通过四种不同的方式避免在 bean 中写入属性标签。
- 按名称自动接线
在这种情况下,Customer 类中的属性名称必须与您要自动装配的 bean 的 id 匹配,即“person”
因此,Customer bean 的条目可以重写为
<bean id="customer" class="...Customer" autoWire="byName" />
类似地,spring 中还有其他的自动接线方式,按类型自动接线,构造函数,自动检测。您可以参考链接http://www.mkyong.com/spring/spring-auto-wiring-beans-in-xml/
于 2018-06-28T06:01:55.347 回答