当前位置: 首页 > news >正文

成都六度网站建设有哪些平台可以发布推广信息

成都六度网站建设,有哪些平台可以发布推广信息,wap静态模板,怎么注销建设银行网站用户名记录spring中Transactional事务注解失效的六个场景 方法内的自调用 原因:通过this内部调用其他带有Transactional注解的方法,是通过this进行调用,并没有通过cglib代理对象进行调用,导致方法未被增强导致无法检测内部事务 解决方…

记录spring中Transactional事务注解失效的六个场景

方法内的自调用

原因:通过this内部调用其他带有@Transactional注解的方法,是通过this进行调用,并没有通过cglib代理对象进行调用,导致方法未被增强导致无法检测内部事务
解决方法:通过实现类内部自己注入自己的bean实现调用内部方法,以调用cglib增强的代理方法。或者通过AopContext.currentProxy()获取当前代理对象,使用之前需要引aspectjweaver依赖,并且需要在启动类上加入@EnableAspectJAutoProxy(exposeProxy=true)注解。或者在调用方加入@Transactional注解

方法是private的

原因:spring基于cglib进行AOP,cglib基于父子类来实现的,子类是代理类,父类是被代理类,如果父类某个方法是被private修饰,子类的类没法拿到父类的方法,所以导致方法无法被cglib代理,进而无法使用代理方法
解决方法:使用public

方法是final的

原因:因为代理需要重写方法,但是final方法无法被重写,所以无法被代理,而无法被代理所以就无法使用@Transactional注解来管理事务
解决方法:去掉final

单独的线程调用方法

原因:事务是跟连接绑定的,而一个连接是一个线程,新开了一个线程等于新开了一个事务,两个线程的事务管理不同

异常被吃掉

原因:事务回滚是根据异常进行的,手动进行异常处理不会回滚事务

类没被spring管理

原因:没进行bean注入,直接new无法使用spring的事务管理

管理事务的方式

1.使用编程式事务,beginTransaction(), commit(), rollback()
2.基于TransactionProxyFactoryBean的声明式事务管理
3.基于@Transactional的声明式事务管理
4.基于Aspectj AOP配置事务
5.使用分布式事务进行管理,2PC,3PC、TCC

如何避免事务失效

1.使用编程式事务,手动提交
2.避免慢查询
3.不要再事务中加入耗时操作,如rpc,大批量插入修改等

http://www.tj-hxxt.cn/news/127293.html

相关文章:

  • 凡科可以做视频网站吗企业邮箱登录
  • 用虚拟机做网站服务器吗做网站建设公司
  • 上海营销型网站设计网站关键词排名优化电话
  • wordpress页面标题字号seo优化排名是什么
  • 产品设计公司哪家好长沙网站包年优化
  • 自己做网站需要什么条件排名首页服务热线
  • iis7重启 网站宁德市人社局官网
  • c 的动态网站开发响应式网站建设
  • 深圳做网站佰达科技三十百度识图找原图
  • 设计师建站网站免费收录网站推广
  • 腾讯云做视频网站网站如何推广运营
  • 做旅游网站推广网站推广计划
  • 在自己的网站上怎么做淘宝客国家免费技能培训平台
  • 政府门户网站模板百度视频推广
  • 温州网站建设温州网站制作打开app下载
  • 怎么弄微信小程序卖东西天猫seo搜索优化
  • 武大网站建设搜索引擎入口大全
  • app 网站开发培训机构推荐
  • 企业首次建设网站的策划方案企业网站seo
  • wordpress+翻页函数杭州哪家seo公司好
  • 晋中市政府门户网站seo完整教程视频教程
  • 性用品微商做的最好的网站广东深圳龙华区
  • 不需要网站备案的空间seo首页优化
  • 长沙抖音代运营南阳seo
  • 现在如何给网站做外链网络营销策略包括
  • 网站需要什么服务器品牌推广方案怎么写
  • 淘宝上做网站SEO靠谱吗网站seo提升
  • 做微网站的第三方登录拓客团队怎么联系
  • 什么视频直播网站做挣钱百度网站统计
  • 网站的 联系我们怎么做长春seo主管