一、搭建环境
我们先创建一个user类。其中字段包括 id name address
Address是在包里声明的另一个类。
/** * @Description: 用户类 用来构造器注入以及cp命名空间注入 * @Author: cckong * @Date: */ public class User { private int id; private String name; private Address address; public User(int id, String name, Address address) { this.id = id; this.name = name; this.address = address; } public User() { } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Address getAddress() { return address; } public void setAddress(Address address) { this.address = address; } @Override public String toString() { return "User{" + "id=" + id + ", name=‘" + name + ‘\‘‘ + ", address=" + address + ‘}‘; } }
二、使用构造器注入
用构造器注入 必须书写有参构造方法(无参最好也写上 毕竟写有参就不会自动生成无参了)
在配置文件中 可以只注入2个参数 但是必须要有那2个参数的构造器 否则会报错
我们来看一下注入的语句
三、测试
一、环境搭建
c p命名空间其实就是构造器constructor以及set注入的properties的快捷方式
要在配置文件里加上
c空间
c:字段名。也可以变成全参构造的第几个比如c:01之类的
<bean id="user2" class="com.lei.pojo.User" c:id="01" c:name="cckong" c:address-ref="address" ></bean>
p空间
<bean id="user3" class="com.lei.pojo.User" p:id="01" p:name="cckong" p:address-ref="address"></bean>
【Spring】DI依赖注入实例 构造器注入 c、p命名空间注入
原文:https://www.cnblogs.com/cckong/p/14370492.html