使用@Transactional注解的方法所在的类获取不到注解的解决方案
前段时间遇到一个问题,一个service叫做A吧,有多个实现类分别是B,C,D,需要根据前端传的不同参数去匹配不同的实现类,我就自定义了一个注解@OrderDeal放在B,C,D上面,然后匹配前端传的值和注解里的value来匹配对应的实现类,这种做法经测试完全是行的通的;但是,由于业务需要我需要对实现类B进行事务操作,所以就用了spring的@Transactional注解放在方法上,但是这时候问题出现了,我匹配注解的逻辑出了问题,经查是因为拿不到B类上面的自定义注解@OrderDeal了,这才恍然大悟,因为spring的声明式事务是通过代理实现的,而B被代理后,其上的注解默认是不保留的,经百度得到的解决方案是在自定义注解@OrderDeal上添加@Inherited注解即可,由于时间仓促,就不配源码了,记录下以备不时之需!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
压榨数据库的真实处理速度
菜刀詩人8888
2024-05-08 13:01:15
【每日一题】无重复字符的最长子串
Aikoin
2024-05-08 12:59:55
【每日一题】两数相加
Aikoin
2024-05-08 12:59:55
java 两个列表的元素是否相等且各自元素数量相等
吳川華仔博客
2024-05-08 12:58:45
多个开源的js补环境框架测试
qwertyuiop1822
2024-05-08 12:58:34
【2024-05-04】连岳摘抄
23:59 我們的青年是一種正在不斷成長、不斷上升的力量,他們的使命是根據歷史的邏輯來創造新的生活方式和生活條件。
wc的一些事一些情
2024-05-08 12:57:53
Quick Logger 强大的企业级异步记录器
海利鳥
2024-05-08 12:56:53
vscode好用的快捷键
He_LiangLiang
2024-05-08 12:54:12
centos7跨机器拷贝文件,scp命令介绍
He_LiangLiang
2024-05-08 12:54:12
面试官:核心线程数为0时,线程池如何执行?
王磊的博客
2024-05-08 12:52:52
抖音无人直播循环播放录音频软件
陶士涵
2024-05-08 12:52:02