Spring实现依赖注入的方法
这篇文章运用简单易懂的例子给大家介绍Spring实现依赖注入的方法,代码非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
总得来说,Spring中依赖注入有这么三种方式:
①通过set方式赋值
②通过构造器赋值
③通过p标签赋值
下面我们稍稍展开来谈:
1.通过set方式赋值
<bean id="teacher" class="org.szh.entity.Teacher" p:age="24" p:name="lq"><property name="name" value="zs"></property><property name="age" value="23"></property></bean>
主要用到<property></property>围堵标签来传递值
此处的name就是Teacher类里声明的变量名,value就是你要给这个变量赋什么值。
Teacher类:
public class Teacher { private String name; private int age; public Teacher() {} public Teacher(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}
2.通过构造器赋值
<bean id="teacher" class="org.szh.entity.Teacher"><constructor-arg value="zs" ></constructor-arg><constructor-arg value="24" ></constructor-arg></bean>
注意上面的Teacher类中要有对应的构造方法。
如果构造方法中的参数列表的值很多的话,我们一一对应去写就很累,此时有如下几种方式来帮助我们精准地给变量赋值:
1.用index(下标值)
2.name(声明变量的名称)
3.type(声明变量的类型)//需要构造器中参数列表声明的类型不一致
来传递value值都可以
具体格式如下即可:
<constructor-arg value="zs" 你要用来做辨认的属性(index/name/type)="..."></constructor-arg><constructor-arg value="24" 你要用来做辨认的属性(index/name/type)="..."></constructor-arg>
此处还有一个需要注意的点:如果你要在标签内传递引用类型的话,就不能用value了,得用ref:
<constructor-arg ref="teacher"></constructor-arg>
3.通过p标签赋值
这边需要注意下,如果你的编译器没有安装sts的话,就要在你的applicationContext.xml的配置声明里加上这样一句话:
xmlns:p="http://www.springframework.org/schema/p"
如果安装过sts,那么在Namespaces里直接勾选即可:
具体写法如下:
<bean id="teacher" class="org.szh.entity.Teacher" p:age="24" p:name="lq"></bean>
只需要在标签内加上p:xxx="xxx"即可。
关于Spring实现依赖注入的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。