多线程与事务提交

cqu903 2009-02-26 11:48:35
系统采用了SSH架构,前端使用了opensessioninview模式,系统在Bo层使用了事务拦截器,退出Bo层的时候提交事务,现在的问题是我在Bo层的上面一层开了3个字线程,让它们同时调Bo层的同一个方法,但其中有线程抛出了异常,按理来说,抛出异常就应该回滚事务,但是却发现提交了事务。
另:事务配置没有问题,我之前没有使用多线程的时候一切正常。
还望大家给个解答,当系统是单线程的时候,每个线程应该是使用了ThreadLocal来绑定session,开了几个线程之后,感觉事务就有些乱了
...全文
371 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
捏造的信仰 2009-02-27
  • 打赏
  • 举报
回复
用专门的类来管理多个线程中的同一个事务。如果没有这样的类,就自己写一个。
sunnykun 2009-02-27
  • 打赏
  • 举报
回复
多个线程用一个事务,确实有点混乱。能贴点代码来分析分析么?
老紫竹 2009-02-26
  • 打赏
  • 举报
回复
事务,对于数据库来说就是一个数据库连接!

你的多个线程,使用同一个数据库链接,你认为这个设计是正确的吗?

fosjos 2009-02-26
  • 打赏
  • 举报
回复
spring好像没说支持多线程,本来是用threadlocal来绑定session,从而控制事务回滚
新建thread后,确实如楼主说的都乱了

什么需求会用到ssh多线程呢

62,614

社区成员

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

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