hellojwzs 2012-10-18 15:40
浏览 257
已采纳

OpenSessionInViewFilter在查询完之后不提交事务?

环境如下
Struts2+Spring3+Hibernate3
数据库 sqlserver2000

为了使用延迟加载, 加入了OpenSessionInViewFilter
[b]但发现, 在只有查询情况下, 请求处理完之后, 会有"打开的事务"[/b]
注:"打开的事务"可以用sqlserver企业管理器自带的 活动监视器查看
[b]若是更新操作, 不会出现有"打开的事务"[/b]

若去掉OpenSessionInViewFilter, 虽说延迟加载不能用了, 但不会出现"打开的事务"

求解!

  • 写回答

1条回答 默认 最新

  • jinnianshilongnian 2012-10-18 16:54
    关注

    OpenSessionInViewFilter在查询完之后不提交事务:是的

    这是因为当使用OpenSessionInViewFilter时session的flushMode默认为FlushMode#MANUAL,即不会commit 因此事务是不会提交的 最后仅session.close();

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码