==================
Spring IoC创建对象
==================
1 实体类
在/src/main/java/cn.tedu.springioc.beans目录下创建Subject.java文件:
public class Subject {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Subject{" +
"name='" + name + '\'' +
'}';
}
}
在/src/main/java/cn.tedu.springioc.beans目录下创建Student.java文件:
public class Student {
private String number;
private String name;
private String gender;
private int age;
private Date enrollment;
private Subject subject;
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Date getEnrollment() {
return enrollment;
}
public void setEnrollment(Date enrollment) {
this.enrollment = enrollment;
}
public Subject getSubject() {
return subject;
}
public void setSubject(Subject subject) {
this.subject = subject;
}
@Override
public String toString() {
return "Student{" +
"number='" + number + '\'' +
", name='" + name + '\'' +
", gender='" + gender + '\'' +
", age=" + age +
", enrollment=" + enrollment +
", subject=" + subject +
'}';
}
}
2 以传统方式创建对象
在/src/main/java/cn.tedu.springioc.test目录下创建TraditionTest.java文件:
public class TraditionTest {
public static void main(String[] args) {
// 以传统方式创建对象
Student sa = new Student();
sa.setNumber("1001");
sa.setName("张飞");
sa.setGender("男");
sa.setAge(20);
sa.setEnrollment(new Date());
Subject subject = new Subject();
subject.setName("Java");
sa.setSubject(subject);
System.out.println(sa);
}
}
运行测试:
Student{number='1001', name='张飞', gender='男', age=20, enrollment=Wed Feb 09 09:37:46 CST 2022, subject=Subject{name='Java'}}
例程:SpringIoC
3 通过Spring获取对象
在/src/main/resources/applicationContext.xml文件中添加:
...
...
在/src/main/java/cn.tedu.springioc.test目录下创建SpringTest.java文件:
public class SpringTest {
public static void main(String[] args) {
// 初始化Spring容器
ClassPathXmlApplicationContext context =
new ClassPathXmlApplicationContext("applicationContext.xml");
// 通过Spring获取对象
Student sb = context.getBean("sb", Student.class);
System.out.println(sb);
}
}
运行测试:
Student{number='null', name='null', gender='null', age=0, enrollment=null, subject=null}
例程:SpringIoC
4 通过Spring配置初值
...
...
public class SpringTest {
public static void main(String[] args) {
...
// 通过Spring配置初值
Student sc = context.getBean("sc", Student.class);
System.out.println(sc);
...
}
}
运行测试:
Student{number='1001', name='张飞', gender='男', age=20, enrollment=Wed Feb 09 09:43:25 CST 2022, subject=Subject{name='Java'}}
例程:SpringIoC