<!-- 整篇系列内容都是根据郭峰大大的Spring从入门到精通学习整理的-->
Bean自动装配的五种模式
自动装配可以指定给每一个单独的Bean。
通过使用自动装配,开发人员可以减少指定属性的需要,从而节省一些属性设定的工作。
使用Bean的autowire属性指定Bean定义自动装配。
共有五种模式。
byName:
byName模式指的就是通过Bean属性名称进行自动装配。
byType:
byType模式指的就是如果XML中正好有一个与属性类型一样的Bean,就自动装配这个属性。
如果多于一个这样的Bean,就会抛出异常。
如果没有匹配的Bean,则什么都不会发生,通过设置dependency(从属)-check=”objects”属性值来指定在这种情况下应该抛出错误。
Constructor
Constructor模式就是根据构造函数的参数自动进行装配。
Autodetect
Autodetect模式是通过对Bean检查类的内部来选择使用constructor还是byType,先constructor,如果没有,则用ByType。
No
No模式表示不使用自动装配。
——很多企业级用用不鼓励使用自动装配,因为他对Bean的参考依赖关系不清晰。
显式的指定依赖(property/constructor-arg),总会覆盖自动装配。