Spring容器初始化后执行的方法

原文出处: https://blog.csdn.net/wenniuwuren/article/details/42004539


在项目中, 会遇到要在容器加载完就做一些初始化, 例如Quartz的监听器重新注册(Quartz监听器在RAM中的, Web容器重启或关闭会丢失)等需求。

  1. import org.springframework.context.ApplicationListener;
  2. import org.springframework.context.event.ContextRefreshedEvent;
  3. public class InitialSchedulerListner implements ApplicationListener<ContextRefreshedEvent> {
  4. @Override
  5. public void onApplicationEvent(ContextRefreshedEvent event) {
  6. // 在web 项目中,系统会存在两个容器,一个是root application context ,另一个就是项目的projectName-servlet context(root application context的子容器)
  7. // Return the parent context, or null if there is no parent and this is the root of the context hierarchy
  8. if(event.getApplicationContext().getParent() == null){ // 保证了容器只执行一次..
  9. try {
  10. // 业务逻辑
  11. } catch (Exception e) {
  12. }
  13. }
  14. }
  15. }
 
代码写完记得注入给Spring管理: 
<bean class="com.wenniuwuren.*.InitialSchedulerListner" />


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值