springBoot的事件机制GenericApplicationListener用法解析
程序员文章站
2022-06-30 09:49:28
什么是applicationcontext?
它是spring的核心,context我们通常解释为上下文环境,但是理解成容器会更好些。 application...
什么是applicationcontext?
它是spring的核心,context我们通常解释为上下文环境,但是理解成容器会更好些。 applicationcontext则是应用的容器。
spring把bean(object)放在容器中,需要用就通过get方法取出来。
applicationevent
- 是个抽象类,里面只有一个构造函数和一个长整型的timestamp。
- springboot的event的类型:
- applicationstartingevent
- applicationenvironmentpreparedevent
- applicationcontextinitializedevent
- applicationpreparedevent
- contextrefreshedevent
- servletwebserverinitializedevent
- applicationstartedevent
- applicationreadyevent
applicationlistener
是一个接口,里面只有一个onapplicationevent方法。所以自己的类在实现该接口的时候,要实现该方法。
applicationlistener的封装类
- genericapplicationlistener
- genericapplicationlisteneradapter
- smartapplicationlistener
关系
如果在上下文中部署一个实现了applicationlistener接口的bean,那么每当在一个applicationevent发布到 applicationcontext时,这个bean得到通知。其实这就是标准的oberver设计模式。
注意
要配置meta-inf/spring.factories文件,并在文件中实现
使用
// 第一种方式 public class aiinfluxdbapplicationlistener implements genericapplicationlistener { @override public int getorder() { return ordered.lowest_precedence; } @override public boolean supportseventtype(resolvabletype eventtype) { return applicationreadyevent.class.isassignablefrom(eventtype.getrawclass()); } @override public void onapplicationevent(applicationevent event) { system.out.print("here is applicationreadyevent"); } } //第二种方式 public class configapplicationlistener implements applicationlistener<applicationenvironmentpreparedevent>, ordered { @override public int getorder() { return highest_precedence; } @override public void onapplicationevent(applicationenvironmentpreparedevent event) { } } //meta-inf/spring.factories文件定义 org.springframework.context.applicationlistener=\ com.demotest.core.applicationstartlistener
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: 深入学习Java中的SPI机制
下一篇: Bootstrap媒体对象学习使用
推荐阅读
-
springBoot的事件机制GenericApplicationListener用法解析
-
spring-boot-2.0.3不一样系列之番外篇 - springboot事件机制,绝对有值得你看的地方
-
spring — spring中的事件驱动机制解析
-
springBoot的事件机制GenericApplicationListener用法解析
-
解析React事件处理的机制及原理
-
Yii框架组件的事件机制原理与用法分析
-
【玩转SpringBoot】通过事件机制参与SpringBoot应用的启动过程
-
深入解析PHP的Yii框架中的event事件机制
-
深入解析PHP的Yii框架中的event事件机制_PHP
-
深入解析PHP的Yii框架中的event事件机制_PHP