这一篇所写的是最小化springXml文件配置,因为内容有点多,就要分两次写完!哈,其实是我有点懒!
在这次简化配置中,我们将用到新的知识,就是自动装配和自动检测两种,当这两个一起使用的时候就会减少Speingxml文件的配置!
首先自动装配分为4种类型分别为byName通过与Bean的属性具有相同名字的其他Bean装配到对应的属性中去!byType通过把Bean的属性具有相同类型的其他bean装配其中!constructor把bean的构造器相同的bean装配其中,autodetect首次尝试用构造期的方式进行自动装配,失败后用byType进行装配
首先说的是通过byName装配
在bean中增加了一个autowire属性设置为byName就是根据名字去查找,如果设置成bytype就是根据类型去查找但是这两种方式都会有一个缺点就是会查找到多个,再使用类型的时候需要在bean中设置primary属性为true这个bean就比其他类型的bean具有优先级,可以解决多个相同类型的问题!如果类型中我们需要排除一些bean的自动装配就可以使用authowire-candidate属性为false来忽略掉!
Construtor自动装配
在bean中的autowire设置为constructor即可,当不确定使用哪种装配方式时可以使用autidetect来装配让其自己选择!
当然我们也可以在装配的时候默认自动装配使用哪种方式!
默认情况下是不使用自动装配的,default-autowire为none!
我们在配置文件中也可以先使用自动装配,然后其中某个文件不想使用自动装配时可以显示控制为其他方式装配!如图所示
但是这种混合装配的时候我们不能把cinstructor与<constructor-org>元素混合在一块使用