spring boot 系统启动成功事件和失败事件监听

扫码关注公众号:Java 技术驿站

发送:vip
将链接复制到本浏览器,永久解锁本站全部文章

【公众号:Java 技术驿站】 【加作者微信交流技术,拉技术群】

spring boot 系统启动事件和失败事件监听

监听spring boot 服务的启动与失败,在服务启动后可能需要处理一些的业务

github代码链接 service-common 模块中

  1. 服务启动成功事件
    @Component
    public class ApplicationReadyEventListener implements ApplicationListener<ApplicationReadyEvent> {
        private static Logger logger = LoggerFactory.getLogger(ApplicationReadyEventListener.class);

        @Override
        public void onApplicationEvent(ApplicationReadyEvent event) {
            EventUtil.dispatcher(IStartupEvent.class);
        }
    }

2.服务启动失败事件

    @Component
    public class ApplicationFailedEventListener implements ApplicationListener<ApplicationFailedEvent> {
        private static Logger logger = LoggerFactory.getLogger(ApplicationFailedEventListener.class);
        @Override
        public void onApplicationEvent(ApplicationFailedEvent event) {
            logger.info("系统启动失败......");
        }
    }

3.事件分发机制
通过继承IEvent 实现事件的分发处理,更加简洁的处理一些业务的中操作,比如日志等,将代码的更好的解耦

(1)创建启动事件接口 继承IEvent

    public interface IStartupEvent extends IEvent{
    }

(2)实现IStartupEvent 接口,execute 执行对应方法

    @Component
    public class SyetemStartupEventImpl implements IStartupEvent {
        private static Logger logger = LoggerFactory.getLogger(SyetemStartupEventImpl.class);
        @Override
        public int order() {
            return 0;
        }

        @Override
        public void execute(Object... objects) {
            logger.info("服务启动成功。。。。。。");

        }
    }

(3)使用方式,会找到对应实现类

    EventUtil.dispatcher(IStartupEvent.class);

来源:[]()

赞(0) 打赏
版权归原创作者所有,任何形式的转载请联系博主:daming_90:Java 技术驿站 » spring boot 系统启动成功事件和失败事件监听

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏