JSP登录2页

时间:2011-08-14 16:30:05

标签: java jsp authentication redirect login

我正在使用JSP和servlet来开发我的Web应用程序。我有2个JSP页面,我希望只有在用户登录后才能访问它们。 我想要一旦一个人到达页面(比如page1.jsp),如果他们没有登录,他们将被要求输入用户名密码(在页面login.jsp上),一旦他们提供正确的用户名密码,他们可以回到同一个页面(的Page1.jsp)。 如果之前他们正在浏览page2.jsp,他们将从login.jsp重定向到page2.jsp。

我不知道如何将它们重定向到相应的页面,具体取决于之前访问的内容。

1 个答案:

答案 0 :(得分:2)

您需要在会话中存储previousURL。然后在登录成功后从会话中检索previousURL值并相应地重定向。

您可以使用HttpServeltRequest.getRequestURI()获取请求URI。要保存和检索会话中的值,您需要使用HttpSession.setAttribute()在会话中保存值并HttpSession.getAttribute()获取会话中的值。要获取会话对象本身,您可以通过调用HttpServletRequest.getSession()

来实现

简而言之,这里是步骤: -

  1. 在你的servlet方法中,让我们说“page1.jsp”你检测到用户没有登录。因此,你存储会话变量previousURL。
  2. 然后您重定向到login.jsp。
  3. 成功登录后,您将检索previousURL的值,并从登录servlet重定向到该URL。
  4. 希望这有帮助!