1、异常信息

org.springframework.transaction.TransactionTimedOutException: Transaction timed out: deadline was Tue Jul 23 18:06:32 CST 2019...

2、示例代码

@Service
public class UserServiceImpl implements UserService{// 加载mapper@Autowiredprivate UserMapper usermapper;@Transactional(propagation=Propagation.REQUIRED,timeout=5) // 启用事务管理public void myTransaction(User addUser, User updateuser) {System.out.println("---- UserServiceImpl  myTrasaction方法开始 ");usermapper.add(addUser);try {Thread.sleep(7000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}usermapper.update(updateuser);System.out.println("---- UserServiceImpl  myTrasaction方法结束 ");}}/**
*    单元测试代码
*/@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:spring-transaction-annotation.xml")
public class TestTransaction {@Autowiredprivate UserService userService;@Testpublic void test1(){User addUser = new User("wuyifan","吴亦凡","123456789",1,new Date(),"13688889999","西安市长安区成府路207号",1,1,new Date(),null,null);User updateuser = new User();updateuser.setId(81);updateuser.setUserCode("dzq");updateuser.setUserName("邓紫棋");userService.myTrasaction(addUser, updateuser);}}

3、错误原因

事务超时

@Transactional(propagation=Propagation.REQUIRED,timeout=5) 指定事务的运行时间是5秒,而myTransaction中线程休眠时间就有7秒,所以事务的运行时间不够,因此报错。

4、解决方法

可以设置timeout的值更大,或者可以不设置,使用默认值(timeout的默认值是none)

注意:如果事务直接提交,没有报错,可能就是你的jar包版本的问题。

我的版本:

myabtis 3.4.5

myabtis-spring 1.3.0

此文希望可以帮助到大家。如有错误,请指教。

如果大家还有其他的情况或者好的解决方法,也望指教,感谢阅读。

Spring+mybatis整合声明式事务异常之org.springframework.transaction.TransactionTimedOutException: Transaction ..相关推荐

  1. spring+mybatis之声明式事务管理初识(小实例)

    前几篇的文章都只是初步学习spring和mybatis框架,所写的实例也都非常简单,所进行的数据访问控制也都很简单,没有加入事务管理.这篇文章将初步接触事务管理. 1.事务管理 理解事务管理之前,先通 ...

  2. Spring AOP实现声明式事务代码分析

    众所周知,Spring的声明式事务是利用AOP手段实现的,所谓"深入一点,你会更快乐",本文试图给出相关代码分析. AOP联盟为增强定义了org.aopalliance.aop.A ...

  3. Spring源码——声明式事务流程

    前言 最近回顾了一下Spring源码,准备用思维导图的方式简单的将整个源码内容的流程展示出来,思维导图.图片等文件更新在https://github.com/MrSorrow/spring-frame ...

  4. spring 注解开启声明式事务

    spring开启声明式事务: 导入依赖: pom.xml <dependencies><!-- https://mvnrepository.com/artifact/org.spri ...

  5. spring——使用注解声明式事务整合jdbc——GRUD

    准备阶段: pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...

  6. spring——使用xml声明式事务整合jdbc——GRUD

    准备阶段: pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...

  7. Spring如何用“声明式事务”保护亿万数据安全?【万字解决并发冲突】

    Hello,你好呀,我是灰小猿,一个超会写bug的程序猿

  8. spring声明式事务

    11.声明式事务 11.1 事务回顾 把一组业务当做一个业务来坐,要么都成功,要么都失败! 事物在项目开发中的重要性不言而喻,关系到数据的一致性文件 确保完整性和一致性 事务的ACID原则 原子性(A ...

  9. SpringMVC、MyBatis声明式事务管理

    2019独角兽企业重金招聘Python工程师标准>>> 采用的基本搭建环境:SpringMVC.MyBatis.MySQL.tomcat         Spring事务管理分解了传 ...

最新文章

  1. 1亿参数4万样本BERT仍听不懂人话,我们离通用NLP能还有多远?
  2. MySQL 调优基础:Linux内存管理 Linux文件系统 Linux 磁盘IO Linux网络
  3. oracle 10g 4031
  4. pycryptodom的源码安装
  5. jQuery向未来的元素添加事件处理程序(绑定事件)
  6. php中节点值怎么获取,php – 节点更新:获取旧值
  7. 使用.NET Core 2.1,RabbitMQ,SignalR,EF Core 2.1和Angular 6开发微服务
  8. 矢量绘图软件 android,sai绘图软件官方
  9. 【时间序列】动态时间规整(DTW)算法简介(python)
  10. 制作Win10 U盘版移动便携系统
  11. cBioPortal数据库使用
  12. java 调用 pb dll_[转载]一个java调用delphi写的dll问题,郁闷了一天一晚解决
  13. pbs转换html,pbs 脚本实例说明.docx
  14. 金属塑性成形计算机模拟仿真,金属塑性成形计算机模拟的若干进展
  15. c语言头文件inistd,Windows10 VS2017 C++ ini解析(使用simpleini头文件)
  16. stm32视频教程分享:心率检测仪的设计与实现
  17. Orthanc的REST API — Orthanc Book文档
  18. 51单片机之——串口通信(含实现部分)
  19. 第十六次ScrumMeeting博客
  20. [转]尚学堂科技 - 马士兵老师-JAVA自学之路

热门文章

  1. 《C陷阱与缺陷》----词法“陷阱”
  2. 计算机毕业设计SSM毕业生导师双选系统【附源码数据库】
  3. linux的免费虚拟机,Win10下的Linux+非虚拟机+非双系统+可靠教程+免费
  4. 如何在第三方软件加载星图地球数据云影像?
  5. c执行cmd pdf2swf_swftools实现pdf文档转swf文件 解决中文乱码
  6. WCG06意大利全球电竞总决赛视频汇总
  7. 卷二:图形编程MFC第1篇:画笔、画刷、
  8. 监听微信手Q的挂起事件(visibilitychange)
  9. python怎么进行分数运算_Python中的分数运算
  10. Rabbitmq手动未确认解决方案