初始化和销毁
1目标类
package com.itheima.e_lifecycle;
public class UserServiceImpl implements UserService {
@Override
public void addUser() {
System.out.println("e_lifecycle add user");
}
public void myInit(){
System.out.println("初始化");
}
public void myDestroy(){
System.out.println("销毁");
}
}
2配置
<!-- 配置service
<bean> 配置需要创建的对象
id :用于之后从spring容器获得实例时使用的
class :需要创建实例的全限定类名
init-method :用于配置初始化方法,准备数据
destroy-method:用于配置销毁方法 ,释放资源
要求:容器必须关闭,销毁方法才执行, 必须是单例的
-->
<bean id="userServiceId" class="com.itheima.e_lifecycle.UserServiceImpl"
init-method="myInit" destroy-method="myDestroy" scope="singleton"
></bean>
3测试
package com.itheima.e_lifecycle;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestCycle {
@Test
public void demo01(){
String xmlPath = "com/itheima/e_lifecycle/beans.xml";
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath) ;
UserService userService = applicationContext.getBean("userServiceId",UserService.class ) ;
userService.addUser();
applicationContext.close();
}
}