看我们配置的beans.xml:
在默认的情况下,我们会手动设定userservice所引用的bean:<property name="userdao" ref="u" />,但是我们也可以不指定,由spring来帮我们自动确定,这个叫做autowire,自动装配。
设置方法:
即在bean属性栏里加 autowire="xxx"的属性, autowire有以下几个参数可以设定:
no、bytype、byname、default(常用的是这四个)
默认的是no,即需要手动来设定。
byname是按照名字去匹配。
bytype是按照类型去匹配。
default是指定你在<beans...中设定的 default-autowire="xxx"
byname测试:
beans.xml中设置:
userdaoimpl.java:
改写了tostring方法,打印daoid,看看下面注入了哪个userdao
测试:
结果:
daoid=1
也就是spring按照名字匹配上了<bean id="userdao"...那一项。(大概是按测试类里的userdao类名来匹配的)
bytype测试:
daoid=2
也就是spring按照类型匹配上了<bean id="userdao2"...那一项。(大概是按测试类里的userdao类型匹配的)
转载请注明出处:http://blog.csdn.net/acmman