为处于休眠状态的会话或事务设置超时



下面是我的场景:我的应用程序开始事务,插入/更新,然后调用 Web 服务。Web 服务可能需要很长时间来处理请求。有没有办法在我的休眠层中为我的会话/事务配置超时,以便我可以优雅地关闭会话。PS - 或者,我也可以为我的 Web 服务调用配置超时。假设我没有这种自由。我可以在 Hibernate 中做什么,还是我需要编写自己的自定义逻辑(使用线程连接构造)来实现这些

您可以在特定查询级别设置超时,或者如果您使用 JPA 的实体管理器,则可以添加查询提示。

理论认为,Hibernate默认使用乐观锁定(如果数据库事务隔离级别符合该级别),因此记录永远不会针对写入或读取锁定。因此,即使是长期的交易也不应严重影响性能。

如果您使用的是悲观锁定,则可以在休眠会话中为它们设置超时。查看 Session.LockRequest。

相关内容

  • 没有找到相关文章

最新更新