天天看点

【spring框架】AutoWire自动装配

看我们配置的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