多线程中每个线程独立的事务管理

明哲哈哈哈 2017-10-13 09:31:05
项目背景:web项目 spring+hibernate 已配置spring进行事务控制

问题:
现在有一个需求,需要我开启多个线程同时执行一段代码, 代码中,涉及到数据库操作,
但是我希望每个单独的线程在失败或异常时,能回滚其中的事务
线程的实现类中,包含很多service和dao类,请问我该如何生成线程实例,来保证其中的事务控制互相不影响

...全文
1345 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
明哲哈哈哈 2020-08-04
  • 打赏
  • 举报
回复
引用 3 楼 你笑的像一条狗 的回复:
全部子线程执行的数据如何回滚。
最后的处理是通过楼上的事务隔离级别来控制的, 子线程开启新事物,抛出异常自动回滚
tizzybepeacejoy 2020-06-11
  • 打赏
  • 举报
回复
全部子线程执行的数据如何回滚。
对梦想的牵挂 2019-04-29
  • 打赏
  • 举报
回复
手动创建事务 //可以通过注解实现 @Autowired private DataSourceTransactionManager txManager; DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);// 事物隔离级别,开启新事务 TransactionStatus status = txManager.getTransaction(def); // 获得事务状态 try{ //逻辑代码,可以写上你的逻辑处理代码 txManager.commit(status); }catch(Exception e){ txManager.rollback(status); }
明哲哈哈哈 2017-10-13
  • 打赏
  • 举报
回复
求救,zsbd

81,087

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧