记一波异步@Async的坑并记录下一个可以应用于异步处理的方法

项目中需要用到了异步操作,一开始我是直接使用了@Async这个注解来进行异步操作,但在实际运行的时候,却发现当代码出现异常的时候,并没有正确的抛出异常. 本身我们这个项目是封装了异常抛出的情况,但没有顺利实行. 
在检查了一番后,经同事提点,在加上这个注解前,其实还需要写一个对异常线程池进行定义配置的类,这样才能正常使用这个注解(主程序入口中也需要加上@EnableAsync注解),一番折腾后,由于时间紧迫,决定用一些现成的方法实现异步操作
对比过后,发现有个事件监听的方法,eventListener,这个方法是异步的,这个需要你新建两个类,一个是写事件,一个是监听器,然后在方法中使用messageEmitter.publishEvent(new xxxEvent(参数1,参数2)),这样子也能实现异步操作并正确地抛出了异常,而且还把这个事件单独拿了出来,达到了解耦的目的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值