gpt4 book ai didi

Grails - OSIV - 停止 "Open Session In View"静态资源过滤器

转载 作者:行者123 更新时间:2023-12-02 10:19:37 26 4
gpt4 key购买 nike

我交叉发帖于Javaranch也。我通过谷歌搜索进行了尽职调查。我没有找到任何答案。

我们有一个基于 Web 应用程序的 REST 服务,其后端是使用 Groovy 和 Grails(1.3.7 和 Groovy 1.7.x)实现的。我了解“在 View 中打开 session ”对于 Hibernate 一般是如何工作的,并且在使用 Spring 配置 Hibernate 时,我们可以指定 OSIV 应在过滤器配置中工作的 URL 集。

问题是我找不到如何从 OSIV 过滤器的范围中排除一组 URL(例如匹配 *.js、*.gif 等)。我从 Hibernate 日志中发现,即使对于 Javascript 文件请求,Open Session In View 也会启动并打开 session 并关闭它。

提前致谢。

最佳答案

Grails 有两个 OSIV 模式的实现,GrailsOpenSessionInViewFilterGrailsOpenSessionInViewInterceptor 。早期版本的 Grails 中使用了过滤器,但现在使用的是拦截器(至少在 1.2、1.3 和 2.0 中)。因为它是WebRequestInterceptor它仅适用于 Controller 请求,不适用于 JavaScript、CSS、图像等的静态请求。因此,对于简单文件请求不必要地创建和绑定(bind) Hibernate session ,不存在性能问题。

关于Grails - OSIV - 停止 "Open Session In View"静态资源过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9691709/

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