Spring异步事件


1、发布事件

@Data
public class CustomEvent extends ApplicationEvent implements Serializable {
   private Boolean  ignore = Boolean.FALSE;  
   ...
}

 

@Resource
private ApplicationEventPublisher   publisher;

CustomEvent customEvent = new CustomEvent();
customEvent.setIgnore(true);
publisher.publishEvent(customEvent);

  

2、处理事件

@Component
public class MyEventListener {
    @Async
    @EventListener(condition = "#event.ignore")
    public void handleCustomEvent(CustomEvent event) {
        ...
    }
}

注意: 

  1. 首先它是一个spring组件
  2. 必须声明它是异步的
  3. 声明它是一个监听器
  4. 方法中传递的参数表明它是监听哪个事件
  5. 从监听事件中取参         

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM