一.新建两个对象类,生成set,get方法和构造方法
其中Customer类中含有car属性
Customer类
package com.cws.spring.demo2;
public class Custom {
private String name;
private Car car;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Car getCar() {
return car;
}
public void setCar(Car car) {
this.car = car;
}
public Custom(String name, Car car) {
super();
this.name = name;
this.car = car;
}
public Custom() {
super();
// TODO Auto-generated constructor stub
}
@Override
public String toString() {
return "Custom [name=" + name + ", car=" + car + "]";
}
}
car类
package com.cws.spring.demo2;
public class Car {
private String name;
private double price;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public Car(String name, double price) {
super();
this.name = name;
this.price = price;
}
public Car() {
super();
// TODO Auto-generated constructor stub
}
@Override
public String toString() {
return "Car [name=" + name + ", price=" + price + "]";
}
}
二.普通注入方法
有两种方式,分别为set方法注入,和构造方法注入
set方法注入 其中 property为属性标签,name属性名对应对象类中名称,value为赋值
<bean id="car" class="com.cws.spring.demo2.Car">
<property name="name" value="大众"></property>
<property name="price" value="200000"></property>
</bean>
构造方法注入 constructor-arg标签用于构造方法注入 ref引入其他类中值
<bean id="custom" class="com.cws.spring.demo2.Custom">
<constructor-arg name="name" value="张三"></constructor-arg>
<constructor-arg name="car" ref="car"></constructor-arg>
</bean>
三,p空间注入
xmlns:p="http://www.springframework.org/schema/p"
<!-- p命名空间注入数据 -->
<bean id="car" class="com.cws.spring.demo2.Car" p:name="奇瑞QQ" p:price="60000"></bean>
<bean id="custom" class="com.cws.spring.demo2.Custom" p:name="lisi" p:car-ref="car"/>
四.测试结果
@Test
public void test1(){
@SuppressWarnings("resource")
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
Car car=(Car) applicationContext.getBean("car");
System.out.println(car);
Custom custom=(Custom) applicationContext.getBean("custom");
System.out.println(custom);
}