微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java Spring中如何实现依赖注入

总得来说,Spring中依赖注入有这么三种方式:

①通过set方式赋值

②通过构造器赋值

③通过p标签赋值

java相关视频教程推荐:java视频

下面我们稍稍展开来谈:

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里直接勾选即可:

71d4ee9153c42ec36bfe7259cf1fe84.png

具体写法如下:

<bean id=teacher  class=org.szh.entity.Teacher p:age=24 p:name=lq>
</bean>

只需要在标签加上p:xxx=xxx即可。

java相关文章教程推荐:java入门教程

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐