IOC:控制反转,将对象的创建、初始化、销毁等过程交给spring容器来管理.结合博客的代码讲解视频请点击连接
在之前的博客中已经记录了IOC控制反转过程中的创建的过程,这节课学习了IOC控制反转中的初始化和销毁过程。
本节内容的学习运用到了4个文件,分别是:
1、Mouse.java(实体类)
2、Window.java(ioc控制文件)
3、applicationContext-initAndDestroy.xml(分离出来的主配置文件)
4、applicationContext.xml(主配置文件)
1、Mouse.java(实体类)
package cn.java.intAndDestroy4;
public class Mouse {
public void init(){
//开始事务
System.out.println("Mouse.......init()");
}
public Mouse(){
System.out.println("无参构造方法");//这是一个构造方法
}
public void behavior(){
System.out.println("老鼠喜欢磨牙"); //这是一个实例方法
}
public void updateMoney(){
//开始事务
//1、update money set money=money-200 where id=1
//2、update money set money=money+200 where id=2
//提交事务
System.out.println("老鼠偷钱");
}
public void destroy(){
//提交事务
System.out.println("Mouse.......destroy()");
}
}
2、Window.java(ioc控制文件)
package cn.java.intAndDestroy4;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Window {
public static void main(String[] args){
//1、启动spring框架(并且在spring容器中创建好对象)
ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
//2.获取spring容器中某一创建好的对象
Mouse mouse=(Mouse)context.getBean("mouse");//在使用这个对象之前就会进行init(初始化)操作
mouse.updateMoney();//(动作)
//3、关闭spring容器//(销毁)
ClassPathXmlApplicationContext c=(ClassPathXmlApplicationContext) context;
c.close();
}
}
3、applicationContext-initAndDestroy.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-2.5.xsd">
<bean id="mouse" class="cn.java.intAndDestroy4.Mouse" init-method="init" destroy-method="destroy"></bean>
</beans>
4、applicationContext.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-2.5.xsd">
<!-- <import resource="cn/java/ioc1/applicationContext-ioc.xml"/>
<import resource="cn/java/singleton2/applicationContext-singleton.xml"/> -->
<!-- <import resource="cn/java/lazy3/applicationContext-lazy.xml"/> -->
<import resource="cn/java/intAndDestroy4/applicationContext-initAndDestroy.xml"/>
</beans>