Spring MVC 3全局请求映射

时间:2011-08-27 18:29:01

标签: spring-mvc

我正在尝试检查用户是否在浏览器中存储了Cookie。如果他们这样做并且未设置会话,则调用服务以将其登录并设置会话。因此,映射范围必须是全局的,因为用户可以为任何页面添加书签并稍后返回。

所以我想要制作一个像这样的全局控制器

@RequestMapping("/*", method=REQUESTMETHOD.GET)
function(){login and set session if true}

..不幸的是/ *似乎不适用于Spring MVC 3.

当然,我总能做到以下

- 在我的header.jsp内(这个文件将包含在每个页面上)

<jsp:useBean id="link" class = "Test.CLASSNAME" />
<%=link.getMETHOD() %>

然而,这个解决方案似乎并不太优雅。

所以,我的问题是

无论如何都要在全球范围内进行@RequestMapping吗?

使用Spring MVC 3有没有更好的方法来处理我的情况?

谢谢:)

1 个答案:

答案 0 :(得分:6)

听起来你需要一个拦截器,而不是一个控制器。这些“跨越”您的控制器映射,允许您将逻辑应用于您的所有请求。

请参阅Spring文档herehere了解如何编写这些文档。