问题场景: 我这里有5个对象,第一次开发的时候是通过页面将各个对象入库的,每个对象入库前获得hibernate的session 开启事务
如果入库过程中无异常则提交事务 并将事务标志复位!(这里借助ThreadLocal 这个类来实现的).这个本身没问题,但是现在需求要求我们 通过脚本将多个对象一起入库.那我加个更大的事务 就出问题了...因为我们调用的还是以前入库的那套接口.意思是 我们现在 没个小对象有个事务, 然后总的来需要个事务 但是一加这个事务就异常了.我的理解是 在每个对象加完后 将事务的标志复位. 然后在最后事务提交的时候 我们得到的事务是一个没开启的. 那何来的 commit 呢?
请各位大侠指导! 我们在不改变原来架构的问题 又能满足这样的需求 该怎么办?
如果入库过程中无异常则提交事务 并将事务标志复位!(这里借助ThreadLocal 这个类来实现的).这个本身没问题,但是现在需求要求我们 通过脚本将多个对象一起入库.那我加个更大的事务 就出问题了...因为我们调用的还是以前入库的那套接口.意思是 我们现在 没个小对象有个事务, 然后总的来需要个事务 但是一加这个事务就异常了.我的理解是 在每个对象加完后 将事务的标志复位. 然后在最后事务提交的时候 我们得到的事务是一个没开启的. 那何来的 commit 呢?
请各位大侠指导! 我们在不改变原来架构的问题 又能满足这样的需求 该怎么办?
解决方案 »
- 文件保存内容为空
- 帮忙看看Wed, 01 Sep 2010 07:01:41 GMT这个时间格式用JAVA怎么转换
- Static 变量为什么进不到background 里??
- 搞不懂JDK已有的方法Spring干嘛重写
- 菜鸟想要个b/s的聊天室代码
- JavaMail 附件文件名含中文报错
- JavaBean中的构造函数带有参数怎么调用?
- struts-confing.xml文件里面的<data-sources>配置的是不是连接池?
- SessionBean+CMP开发时遇到的问题,恳请大虾们指点~!
- 开发ejb用那个包,请问在weblogic中,是那个文件
- Hibernate 事务问题
- 如何实现删除帖子就删除帖子后的所有回复
没用的话,就自己写个AOP调用开启事务和提交
这个还请明细说下.谢谢!主要是不要改变原来架构!
目前已经快要叫版本了 所以 抛弃接口是不可行的. 我们自己有一个基类用来做事务的 开启和提交 但是这个不是问题所在啊 所在的是我们 基类实例只有一个!这个问题很麻烦啊 又要调用原来接口 又想达到需求.这个需要大侠们的指点啊...如果我再new 个基类实例 来控制我的这个大的事务 结果会不会想得到的呢..会对以前的接口有影响么? 请大侠们指点!
不推荐使用由其是hibernate 很麻烦的。如果事务很大的话考虑使用缓存吧。。
hibernate + ehcache 如果还没有处理。你可以到 www.jdon.com 去问 板桥大师