Maven搭建好项目
贴上依赖
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
</dependencies>
第一种初始化和销毁方式
实现InitializingBean和DisposableBean初始化和销毁接口,分别重写对应的方法
package com.gcxzflgl;
import org.springframework.beans.factory.DisposableBean;
import org.springframework.beans.factory.InitializingBean;
public class MyBeans implements InitializingBean,DisposableBean{
@Override
public void afterPropertiesSet() throws Exception {
System.out.println("==========catinit===");
}
@Override
public void destroy() throws Exception {
System.out.println("======销毁=======");
}
}
编写配置类进行装配
package com.gcxzflgl;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Scope;
@Configuration
public class MyConfig {
@Bean
public MyBeans createCat() {
return new MyBeans();
}
}
编写主类
package com.gcxzflgl;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class App {
public static void main(String[] args) {
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class);
System.out.println(context.getBean(MyBeans.class));
context.close();
}
}
第二种初始化和销毁方式
自定义方法实现
package com.gcxzflgl;
public class MyBeans2 {
public void init() {
System.out.println("---init----");
}
public void destory() {
System.out.println("====destory====");
}
}
在MyConfig.class中添加配置l类
@Bean(initMethod="init",destroyMethod="destory")
public MyBeans createMyBeans2() {
return new MyBeans2();
}
主类(App.class)添加
System.out.println(context.getBean(MyBeans2.class));
第三种初始化和销毁,使用JSR250提供的方式
package com.gcxzflgl;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
public class MyBeans3 {
@PostConstruct
public void initial() {
System.out.println("=============init==============");
}
@PreDestroy
public void destory() {
System.out.println("============destory============");
}
}
MyConfig.class添加配置
@Bean
public MyBeans3 createMyBeans3() {
return new MyBeans3();
}
主类添加
System.out.println(context.getBean(MyBeans3.class));
以上就是三种Bean的初始化和销毁方式!