根据我将 spring MVC 与 hibernate 结合使用的经验,我知道在渲染 View 时寻址到延迟获取的集合时发生了延迟异常问题。
它通过引入 OpenSessionInViewInterceptor
修复了一个纯粹的 spring+hibernate 世界或 OpenSessionInViewFilter
从而为每个请求启用一个休眠 session 。
所以问题是:我应该在 grails 中关心这个问题,还是默认情况下启用每个请求一个 session 的行为。
如果这不是 grails 默认值,请提供一些代码来实现此行为。
谢谢。
最佳答案
Grails 注册了一个自定义的 OpenSessionInViewInterceptor 子类(它增加了 WebFlow 感知)。因此,在 Web 请求上下文中所做的任何事情都将有一个打开的 session ,并且延迟加载的引用和集合将被解析。
关于model-view-controller - 使用 Grails 时,我应该关心 Open Session in View 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3244731/