Springboot解决@Async注解不生效问题

异步保存日志

需要异步保存日志时发现:调用此方法并未异步执行。

	public Map<String,Object>  updateSampleSet(Map<String, Object> params) {
        try {
           	service.update(params);
            service.addLog(params);
        } catch (Exception e) {
            log.error("批量修改问题类别失败:{}",e);
        }
        return DataUtil.success(count);
    }

	@Async
    public void addLog(Map<String, Object> params) {
        dao.addLog(params);
    }

解决方法:

1、SpringBoot 启动类是否加上了@EnableAsync注解
2、将需要被异步调用的方法写到其他类中(两个方法都在同一个类里面,只是一个方法调用另一个异步方法,此时异步不生效)
3、重新获取一个bean,在service接口层创建一个方法,实现层实现这个方法,再调用异步方法

SampleService service = SpringUtil.getBean(SampleService.class);

工具类地址如下:
https://blog.csdn.net/WyattWjt/article/details/109292155?spm=1001.2014.3001.5501

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值