SpringBoot动态代理配置说明

SpringBoot动态代理配置说明

基于CGLIB的代理与基于JDK的动态代理实现的声明式事务的区别
  • CGLIB基于继承实现,JDK动态代理基于实现接口实现
  • CGLIB的代理类需要事务注解@Transactional标注在类上(或方法);而JDK动态代理类事务注解@Transactional可以标注在接口上(或方法),也可以标注在实现类上(或方法)

配置项 spring.aop.auto&spring.aop.proxy-target-class&@EnableTransactionManagement(proxyTargetClass = true)

auto proxy-target-class proxyTargetClass 代理技术 备注
true false false JDK动态代理
true true false CGLIB 默认值
true false true CGLIB
true true true CGLIB
false false false JDK动态代理
false true false JDK动态代理
false false true CGLIB
false true true CGLIB
发布了207 篇原创文章 · 获赞 52 · 访问量 155万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术工厂 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览