2

我有这个小型 Web 应用程序,为此我使用 Spring MVC 3.0

我实现登录功能的方式是通过普通的处理程序拦截器。即,当请求进入会话时,检查是否有用户对象,否则将其发送到登录页面。

我的问题是,Spring 是否有一些特殊的 Handler Interceptor 来实现登录功能。如果不是,那么我做对了,如上所述。或者有没有更好的方法来做到这一点。谢谢...

4

2 回答 2

2

你做对了。Spring Security 也以类似的方式执行此操作。但是,它们不是将事物保存在Session对象中,而是将事物保存在另一个数据结构中,因为它们存储了访问权限等附加内容。一旦通过数据库对用户进行身份验证,用户就会被缓存在数据结构中,所有其他请求都将被缓存。然后检查这个缓存。如果用户在缓存中不存在,则将它们扔到登录页面。您实际上在做同样的事情,但使用的是 Tomcat 的内置 Session 对象缓存。

如果您只需要基本的安全性,我建议您不要使用 Spring Security。过度工程是一件坏事。另一方面,如果你觉得项目会扩展成一头庞然大物,那么从现在开始在架构中包含 Spring Security 是非常明智的。

于 2013-05-24T05:21:25.380 回答
0

您可以为此使用弹簧安全性。它是使用过滤器实现的,您可以指定一个登录 url,它会在收到请求并且用户未登录后自动调用。

于 2013-05-24T04:57:13.843 回答