Springboot-Listener(springboot的事件监听的4种实现方式)
程序员文章站
2022-07-31 19:59:29
springboot事件监听的4种方式 第1种: 1.自定义事件MyApplicationEvent继承ApplicationEvent 2.定义一个事件监听器MyApplicationListener实现ApplicationListener接口 3.测试运行 第2种: 在第1种的基础上直接在My ......
springboot事件监听的4种方式
第1种:
1.自定义事件myapplicationevent继承applicationevent
import org.springframework.context.applicationevent;
/**
* created by administrator on 2018\11\13 0013.
* 自定义事件继承applicationevent
*/
public class myapplicationevent extends applicationevent {
public myapplicationevent(object source) {
super(source);
}
}
2.定义一个事件监听器myapplicationlistener实现applicationlistener接口
public class myapplicationlistener implements applicationlistener<myapplicationevent>{
@override
public void onapplicationevent(myapplicationevent event) {
system.out.println("接收到事件:"+event.getclass());
}
}
3.测试运行
@springbootapplication
public class applicationdemo {
public static void main(string[] args) {
//创建一个可执行的spring应用程序
springapplication application = new springapplication(applicationdemo.class);
//配置事件监听器
application.addlisteners(new myapplicationlistener());
//配置应用程序上下文
configurableapplicationcontext context =application.run(args);
//发布事件
context.publishevent(new myapplicationevent(new object()));
//关闭监视器
context.close();
}
}
第2种:
在第1种的基础上直接在myapplicationlistener类上加上@component注解,纳入spring容器管理
@springbootapplication
public class applicationdemo {
public static void main(string[] args) {
//创建一个可执行的spring应用程序
springapplication application = new springapplication(applicationdemo.class);
//配置事件监听器
//application.addlisteners(new myapplicationlistener());
//配置应用程序上下文
configurableapplicationcontext context =application.run(args);
//发布事件
context.publishevent(new myapplicationevent(new object()));
//关闭监视器
context.close();
}
}
第3种:
在application.properties配置文件中配置context.listener.classes=您的包路径.myapplicationlistener
delegatingapplicationlistener 委派监听器 对配置文件进行解析,得到监听器集合,注入spring容器
第4种:
使用@eventlistener注解
@component
public class myeventhandle {
/**
* 参数任意(为object)的时候所有事件都会监听到
* 所有,该参数事件,或者其子事件(子类)都可以接收到
*/
@eventlistener
public void event(object event){
system.out.println("myeventhandle 接收到事件:" + event.getclass());
}
}
上一篇: 婚恋生活锤炼出来的趣言妙语
下一篇: 恋爱像极了销售
推荐阅读
-
Android TextView实现带链接文字事件监听的三种常用方式示例
-
Android中button实现onclicklistener事件的两种方式
-
Android响应事件onClick方法的五种实现方式小结
-
SpringBoot AOP方式实现多数据源切换的方法
-
Android开发实现Fragment监听返回键事件功能的方法
-
vuejs2.0实现分页组件使用$emit进行事件监听数据传递的方法
-
Vue监听事件实现计数点击依次增加的方法
-
SpringBoot Application事件监听的实现方案
-
Android编程实现音量按钮添加监听事件的方法
-
android实现可*移动、监听点击事件的悬浮窗