本帖最后由 u012286237 于 2014-04-29 11:34:08 编辑

解决方案 »

  1.   

    不死也不动就是挂了。 看一下数据库连接数吧,应该是没有空闲连接了。
    反复操作同一个表进行数据更新操作,hibernate事务提交做了么。
    而且手动释放连接,你确定能释放掉么? 
    不要循环操作数据库。
    你优化一下你的sql吧, 你这查询 再删 再加上,  你就不能 直接 saveorupdate?明明一个事务搞定,非要那么多事务去处理,不是很浪费?
      

  2.   

    没有手动的释放  
    还有就是 
    我记得 我用3 的时候 是直接用getseesion操作的
    openseesion的方式 好像不怎么好  
      

  3.   

    用了getSession的方法来获得session,效果和这个一样
      

  4.   


    对的,解决方法可以参考我说的,直接改sql  直接更新,用SaveOrUpdate 直接搞定,尽量不要循环调用数据库连接(用了的话,尽量别上事务。除非 数据很重要,需要回滚或其他数据同时操作)。或者 设置 强制回收连接数时间,扩大连接数(不太保险。)
      

  5.   

    限制活动连接数   配置好切面事务 
    换个连接词试试 
    我觉得 只要操作的量的不大 频繁操作 应该可以接受  
    还有想问问   能不能用java 的task 异步操作 
      

  6.   

    java的task这个还没怎么用过,先查查资料看可行不
      

  7.   

    不知道怎么手动释放,能说下你手动释放的代码吗?还有我后来用了spring自带的HibernateTemplate的excute方法,但是还是感觉不太好
      

  8.   

    我是用spring管理的事务,事务完成后spring会自动释放,不是手动释放的。
      

  9.   

    我是用spring管理的事务,事务完成后spring会自动释放,不是手动释放的。哦,目前我也只是找到了这个方法,但是对其中的个别原理还是不太明白