【问题标题】:Sessions in Java ServletsJava Servlet 中的会话
【发布时间】:2013-12-06 05:04:28
【问题描述】:

我正在尝试使用 servlet 和 jsp 创建一个简单的 Web 应用程序,并且我想使用会话来维护用户会话(实际上我有一个登录页面)。

我的问题是:是否有必要在每个 servlet 中控制会话是否对该用户有效,因为我有多个 servlet 重定向到不同的 jsp 页面。

例如:

Login.jsp -> Login.java (servlet) (控制登录是否有效 与否)

如果登录有效,它将重定向 Welcome.jsp 页面中的用户。在这里,用户可以做一些事情,而不是调用另一个做其他事情的 servlet 类。在最后一个servlet中,是否需要在显示相应的.JSP页面之前控制会话是否有效?

【问题讨论】:

    标签: java jsp session servlets


    【解决方案1】:

    也许,使用ServletFilter 是明智之举。您可以在那里检查登录,而不是在每个 servlet 中写入。

    是的,您必须签入每个安全页面以进行登录。如果我跳过登录并访问我无权查看的页面怎么办?

    【讨论】:

      【解决方案2】:

      听起来您想在这里重新发明轮子。实现Spring Security 比构建自己的安全架构要容易得多。

      这将控制用户可以访问的页面以及会话处理。您甚至不需要在架构的其余部分中使用 Spring,因为它是如此的即插即用。

      【讨论】:

      • 我很想回答同样的问题,但如果他在谈论这个,他可能是个新手。让他学习基础知识:)
      • 确实我对创建 webapps 不是很了解!我知道 spring 或 struts,但我想先学习基础知识,也因为我想做的是非常简单的东西,而且只是为了学校!所以我不会仅仅为了 3 个 servlet 和 jsp 页面而使我的生活复杂化! ...哦,顺便说一句,“他”是“她”:) 无论如何感谢您的建议 :)
      【解决方案3】:

      你应该选择javax.servlet Filter。它是一个界面,

      对资源的请求执行过滤任务(a servlet 或静态内容),或来自资源的响应,或 两者都有。

      基于用户身份的身份验证阻止请求是可以使用Filter 执行的常见功能之一。

      这个article 应该可以帮助你开始。

      【讨论】:

        猜你喜欢
        • 2011-08-06
        • 1970-01-01
        • 1970-01-01
        • 2012-04-12
        • 1970-01-01
        • 1970-01-01
        • 2012-04-19
        • 1970-01-01
        • 2010-12-04
        相关资源
        最近更新 更多