您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
09-Spring配置文件-详解3(init-method与destroy-method)
发布时间:2024-12-18 14:55:54编辑:雪饮阅读()
-
对于dao的implement,bean标签支持init-method可指定implement的一个方法作为初始化方法,也可用destroy-method指定一个方法作为implement的一个销毁方法。
<bean id="userDao" class="com.dao.impl.UserDaoImpl" init-method="init" destroy-method="destroy"></bean>
那么我的implement可以如:
package com.dao.impl;
import com.dao.UserDao;
public class UserDaoImpl implements UserDao {
public UserDaoImpl(){
System.out.println("-----UserDaoImpl被创建--------");
}
public void save() {
System.out.println("UserDaoImpl save running");
}
public void init(){
System.out.println("执行了init方法");
}
public void destroy(){
System.out.println("执行了destroy方法");
}
}
然后由于在单元测试里面单元测试结束了,就直接结束了,没有来得及调用销毁就结束了。
只有在tomcat的容器中运行时候才会调用销毁后才结束。
但这里我们可以用ApplicationContext的子类ClassPathXmlApplicationContext才有close方法,所以单元测试中ApplicationContext实例不要用ApplicationContext类型接收,直接用子类ClassPathXmlApplicationContext接收即可,那么单元测试可如:
import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test1 {
@Test
public void test1(){
//ApplicationContext的子类ClassPathXmlApplicationContext才有close方法
ClassPathXmlApplicationContext app=new ClassPathXmlApplicationContext("applicationContext.xml");
app.getBean("userDao");
app.getBean("userDao");
app.close();
}
}
implement:实现
destroy:销毁
init:、初始化
关键字词:Spring,method,destroy,method