问题如图:
报图中错误的原因是在我写的RedisUtil中开启了事务:
解决办法:
方法一:在application.yml文件中添加
spring:
aop:
proxy-target-class: true
方法二:在启动类上添加@EnableCaching(proxyTargetClass = true) 或 @EnableAsync(proxyTargetClass = true)
方法三:也是在启动类中添加如下代码
@Bean
@ConditionalOnMissingBean
public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() {
DefaultAdvisorAutoProxyCreator daap = new DefaultAdvisorAutoProxyCreator();
daap.setProxyTargetClass(true);
return daap;
}
三个方法中,方法一和方法二在我的项目并没有效果,最后使用方法三解决事务报错问题。