Spring注解式开发: Bean的生命周期中的初始化和销毁

Bean生命周期全部完整过程不再阐述,以下主要描述四种方式完成Bean注册前后执行的初始化方法和销毁方法,Bean被注册后是怎么执行初始化和销毁方法: Bean被注册前后可以设置执行的初始化和容器关闭时执行销毁方法,这些方法是我们可以自己定义的。

方式一:

通过@Bean指定init-method和destroy-method参数的两个值
                 init-method = 初始化方法: 对象创建完成,并赋值好后,调用初始化方法
                 destroy-method = 销毁对象对方: 容器关闭时对象销毁 (如果是多实例容器不会去调用销毁方法)

 配置类代码:

@Configuration
public class Config1 {

    /**
     * initMethod: 该bean被创建并赋值完调用的初始化方法
     * destroy: 容器关闭时调用该bean的销毁方法
     * @return
     */
    @Bean(initMethod = "init", destroyMethod = "destroy")
    public Life life(){
        return new Life();
    }

}

实体类代码: 因为只声明注册一个Life类的Bean

public class Life {

    public void init(){
        System.out.println("life调用初始化方法...");
    }

    public void destroy(){
        System.out.println("life调用销毁方法...");
    }

}

测试代码:

//根据配置类启动容器
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(Config1.class);
//获取所有已被注册的bean的id
String[] ids = applicationContext.getBeanDefinitionNames();
for(String s : ids){
    System.out.println("容器中有: " + s);
}
//关闭容器
applicationContext.close();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值