2

Spring MVC 使用 aDispatcherServlet将控制路由到适当的 Controller。但是过滤器在哪里适合流?如果我指定一个过滤器来执行会话管理或身份验证,过滤器是否总是在 DispatcherServlet 之前调用?

我的困惑来自于他们都指定了一个 URL 模式这一事实。如果它们都提供相同的 url 模式会发生什么?

4

1 回答 1

6

这并不是 Spring 和 Spring MVC 所特有的。一般来说,过滤器总是在servlet之前调用。当您有多个过滤器和一个与给定 URL 模式匹配的 servlet 时,所有过滤器按定义顺序首先执行,<filter-mapping>而 servlet 最后执行。

这样,您可以即时修改请求,甚至完全忽略 servlet。

于 2012-07-05T10:07:17.520 回答