【问题标题】:What's the default hibernate session control behavior in spring?spring 中默认的休眠会话控制行为是什么?
【发布时间】:2011-04-24 16:28:33
【问题描述】:

我有一个使用 spring 和 hibernate 的 3 层应用程序(控制器 -> 服务 -> dao),事务应用于服务层。我没有配置 OpenSessionInViewInterceptor 或 OpenSessionInViewFilter,我想知道休眠会话控制行为。每个事务或每个请求打开会话?谢谢!

【问题讨论】:

    标签: java hibernate spring session


    【解决方案1】:

    如果您使用HibernateTransactionManagerSession 将绑定到当前线程,并在事务结束时刷新并关闭,无论是通过提交还是回滚。

    另见

    【讨论】:

    • 那么每个事务一个会话?
    • 谢谢,帕斯卡!另一个问题,如果一个控制器调用两个不同的服务方法(它们在不同的事务中但只在一个线程中),应该有两个会话打开。我说的对吗?
    • @stinghu 前提是控制器方法本身没有标记@Transactional,即。
    猜你喜欢
    • 2021-09-28
    • 1970-01-01
    • 2013-02-18
    • 2017-06-13
    • 1970-01-01
    • 2013-12-19
    • 2021-04-04
    • 2014-04-15
    相关资源
    最近更新 更多