gpt4 book ai didi

hibernate - Open Session In View 如何与 jms 连接/ session 一起使用?

转载 作者:行者123 更新时间:2023-12-02 14:49:20 25 4
gpt4 key购买 nike

我们有一个 grails Web 应用程序,它接受 http 请求并使用 activemq 将处理委托(delegate)给 pub-sub jms。

由于在将消息发布到目的地后返回了 http 请求,因此 Open Session In View 拦截器 token 是否在发布后立即关闭?

当订阅者开始处理来自activemq队列的消息(这里的服务方法是订阅者)时,整个事务(订阅者服务方法中有多个事务)是否在单个 session 中或hibernate模板策略是否为单个事务打开 session 并在提交后关闭它会被使用吗?
如果是这样,对于单个jms消息处理,会不会有多个 session 会被打开和关闭?

我一直在挠头,但无法解决它,任何帮助都会有用!

最佳答案

好的,这里有几个问题。

让我们从第一个开始:

... is the Open Session In View interceptor token closed right after publishing?



它像往常一样关闭。当 HTTP 请求结束时。发布 JMS 消息对此没有影响。

下一个:

When the subscriber starts processing the message from activemq queue ... will the entire transaction be in a single session ... ?



答案是视情况而定。这取决于您可以使用自己的代码更改默认行为。但是,如果您遵循单一事务服务方法的最常见模式来处理消息,那么将只使用一个 hibernate session (由 JMS 插件功能提供)和一个事务(由您的服务方法提供)。事务和 hibernate session 都将关闭

关于hibernate - Open Session In View 如何与 jms 连接/ session 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41867590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com