spring监听器,使用applicationContext.publishEvent()方法进行触发,@EventListener进行监听
spirng监听器
·
参考gitee:
https://gitee.com/liushanshan126/listener-test
一、实现步骤
-
创建一个实体类,继承ApplicationEvent类
-
再某一处实现代码里面,先注入下图代码,再发布事件,使用代码
applicationContext.publishEvent(继承了ApplicationEvent类的子类) -
在component层,创建一个方法,方法上写入
@TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT)注解,方法里面入参为继承了ApplicationEvent类的子类
@Resource
private ApplicationContext applicationContext;
二、为什么使用spring的监听器,有什么好处
- 使代码解耦
- 可以使用spring监听器的异步功能,与主线程同步执行代码
- 加入@TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT)这一句话,会想让数据库进行提交后,再执行监听器内容。
更多推荐
所有评论(0)