1.引入需要的jar包
2.创建两个实体类person和dog
package ioc.day1;
public class M_Dog {
private String name;
private int age;
public M_Dog() {
super();
System.out.println("dog.....无参构造器");
}
public M_Dog(String name, int age) {
super();
this.name = name;
this.age = age;
System.out.println("dog.....有参构造器");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
System.out.println("dog.....set方法");
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "M_Dog [name=" + name + ", age=" + age + "]";
}
}
package ioc.day1;
public class M_person {
private String name;
private int age;
private M_Dog dog;
public M_person() {
System.out.println("person.....无参构造器");
}
public M_person(String name, int age, M_Dog dog) {
super();
this.name = name;
this.age = age;
this.dog = dog;
System.out.println("person.....有参构造器");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
System.out.println("person.....set方法");
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public M_Dog getDpg() {
return dog;
}
public void setDpg(M_Dog dog) {
this.dog = dog;
}
@Override
public String toString() {
return "M_person [name=" + name + ", age=" + age + ", dog=" + dog + "]";
}
}
3.配置xml文件,用来给spring创建对象
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:c="http://www.springframework.org/schema/c"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- set注入,利用set方法传值 -->
<bean name="M_dog" class="ioc.day1.M_Dog">
<property name="Name" value="大黄"></property>
<property name="Age" value="5"></property>
</bean>
<!-- 利用构造器传参,不写参数默认调用无参构造器 -->
<bean id="person" class="ioc.day1.M_person" >
<constructor-arg name="name" value="zhangsan"></constructor-arg>
<constructor-arg name="age" value="21"></constructor-arg>
<constructor-arg name="dog" ref="M_dog"></constructor-arg>
</bean>
</beans>
4.利用JUnit4创建测试类来测试
package spring_jd2007;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import ioc.day1.M_person;
public class Myday1_Test {
@Test
public void show() {
ApplicationContext ac = new ClassPathXmlApplicationContext("ioc/day1/di/construcor/myday1.xml");
M_person person1 = ac.getBean("person",M_person.class);
System.out.println("------------------");
System.out.println(person1);
}
}
5.测试结果