


④新建一个JavaBean
package com.alexanderbai.bean;
/**
* @Description 学生类
* @Author AlexanderBai
* @Data 2019/6/18 20:44
*/
public class Student{
private Integer id;
private String name;
public Student() {
}
public Student(Integer id, String name) {
this.id = id;
this.name = name;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Student{" +
"id=" + id +
", name='" + name + '\'' +
'}';
}
public void test() {
System.out.println("你好,我是一名学生,我的名字是"+this.name+",
我的学号为"+this.id);
}
}
④配置spring-config.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--配置JavaBean:指定id和要配置的Javabean-->
<bean id="student" class="com.alexanderbai.bean.Student">
<!--配置JavaBean的属性-->
<property name="name" value="AlexanderBai"/>
<property name="id" value="110"/>
</bean>
</beans>
⑤新建测试类
package com.alexanderbai.main;
import com.alexanderbai.bean.Student;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* @Description 测试类
* @Author AlexanderBai
* @Data 2019/6/18 21:00
*/
public class Test {
public static void main(String[] args) {
//创建Spring上下文(加载spring-config.xml文件)
ClassPathXmlApplicationContext classPathXmlApplicationContext =
new ClassPathXmlApplicationContext("spring-config.xml");
//获取Student的实例
Student student = (Student) classPathXmlApplicationContext.getBean("student");
//调用Student的方法
student.test();
}
}
⑥总结
- 可以从上面看出并没有通过new创建对象,而是把创建对象的任务交由Spring进行。
- 以前由程序员通过new创建对象,创建对象的控制权子程序员自己手里;
现在由spring创建对象,控制权发生了转移,这就是控制反转(IOC) - Spring中创建对象的部分称为IOC容器
网友评论