当前位置: 首页 > 面试题库 >

使用哪一个:OpenSessionInViewInterceptor或OpenSessionInViewFilter?

呼延承平
2023-03-14
问题内容

我很难决定要使用哪个“ View Open Session”:使用Spring
MVC的拦截器配置OpenSessionInViewInterceptor还是在web.xml的过滤器中配置OpenSessionInViewFilter?根据我的研究,它们几乎可以做同样的事情,但是我试图了解每种类型的区别和用法。

两者之间的最大区别是,对于无法在web.xml中使用过滤器的人(例如Servlet
2.2及更早版本),他们唯一的选择是使用OpenSessionInViewInterceptor。不知何故,我之所以倾向于拦截器,是因为我必须为我的项目创建一个自定义拦截器,所以我考虑将所有这些“过滤器”分组在Spring
MVC配置文件中,而不是在web.xml和我的自定义中包含OpenSessionInViewFilter Spring
MVC配置文件中的拦截器。这实际上是决定使用哪种方法的me脚方法,而我的好奇心使我在这里丧命。

谁能分享您对此的想法?你们使用哪一个?

谢谢。


问题答案:

正如您所说,两者大致相同。Spring为他们提供了两者,因此您可以选择最适合您现有应用程序的一种。

如果使用Spring MVC,则使用拦截器是有意义的,因为它更易于配置,并且可以与Spring MVC更好地集成。

但是,如果您不使用Spring
MVC,而仅在业务逻辑级别使用Spring,那么拦截器并不是真正的选择,并且过滤器变得更合适。因为过滤器不是由Spring管理的,所以它们很难配置为与Spring集成,但这是一个折衷方案。



 类似资料:
  • 问题内容: 我需要创建一个数据传输对象,该对象将用于存储从数据库检索到的记录。在此数据传输对象中,我需要声明一个数字字段。对于哪个更好 -int 或 Integer 如果我将字段定义为Integer,如果我要从DB中检索2000条以上的记录,会由于’Integer’类型而对性能产生影响吗? 提前致谢。 问题答案: 是一个更好的选择,因为它可以处理;为,将成为,默默的,如果被使用。否则,它可能会引发

  • 问题内容: 呈现视图时,我遇到了hibernate和延迟加载的(著名的)问题....很多人说,仅有的两种解决方案是: 使方法具有事务性(这并不总是可取的) 使用OpenSessionInViewInterceptor。 后者是可取的IMO。无论如何,我不确定此拦截器是否正在触发(实际上,我得到了相同的延迟加载异常,并且没有任何变化): 我使用的是基于简单注释的URL映射,因此请阅读Spring 3

  • 这可能是一个微不足道的问题,但是阅读ARG和ENV的文档并没有让我明白。 我正在构建一个PHP-FPM容器,我希望能够根据用户需要启用/禁用一些扩展。 如果可以在Dockerfile中通过在构建命令上添加条件和传递标志来实现这一点,那就太好了,但是不支持AFAIK。 在我的情况下,我个人的方法是在容器启动时运行一个小脚本,如下所示: 这就是我的的样子: 目前这是工作,但。。。如果我想添加20个(随

  • 问题内容: 我正在编写一种算法,在其中寻找一对值,这些值加在一起会导致我正在寻找另一个值。 我发现使用a 可以从O(n²)加速我的算法。后来我意识到我并没有真正使用我包含的值,因此就足够了。 我在Google上进行了幂搜索,但是在我的问题的标题中找不到这些方法的渐近运行时间的任何信息。 您能指出我应该在哪里寻找这些信息吗? 问题答案: 后来我意识到我并没有真正使用我包含的值,因此就足够了。 不仅是

  • 问题内容: 有两个progid。我看过都用过。 任何人都对我何时应该使用一个相对于另一个使用有任何见解? 问题答案: 海志es 看看这些 http://bytes.com/topic/javascript/answers/559991-msxml-xmlhttp-vs-microsoft- xmlhttp http://forums.asp.net/p/1000060/1622845.aspx

  • 问题内容: 在Java中,我们可以有许多不同的方式来获得当前的时间戳,但哪一个建议: 或 问题答案: 两者都很好。除少数目的外,均不推荐使用。 从纪元开始,您需要几毫秒? 在Java中,我们可以通过多种方法来获取当前时间戳, 对于当前时间戳,请使用。无需转换为毫秒。 Java诞生之初的许多方法,以及标准库中的许多方法,都以自纪元以来的毫秒数为单位。但是,今天我会考虑过时的。看看是否可以找到(或创建

  • 我们目前正在使用Windows\Jenkins 2.107.1(无管道),我正在研究管道。我们有一个夜间构建作业,它从存储库中获取、提交和等待其他作业。我看到9个作业同时在同一主节点上运行(我们只有一个主节点)。我不清楚我们应该有一个Jenkinsfile还是多个Jenkinsfile。它不会是一个多分支管道,因为我们不会创建测试分支,然后再合并回主管道。在存储库中,我们有product1.0分支

  • 问题内容: 使用哪种更好或更方便: 要么 问题答案: 您是否完全需要类型属性?如果您使用的是HTML5,则不会。否则,是的。HTML 4.01和XHTML 1.0 根据需要指定属性,而HTML5具有可选属性,默认为。HTML5现在得到了广泛的实现,因此,如果您使用HTML5doctype,则是有效且不错的选择。 至于type属性中应该包含的内容,2006年注册的MIME类型旨在替代所有主要浏览器(