-2

我正在做示例网页开发,我在其中使用带有 javascript 选项的 Java Servlet、HTML 和 JSP。

我有welcome.jsp 文件,它基本上要求提供登录详细信息。基于成功登录,它将重定向到另一个名为 Menu.JSP 的 JSP 文件

我的问题是,即使用户没有登录并且直接浏览 menu.jsp, ( http://{servername}:8080/project/menu.jsp) 它也不会重定向登录页面。

我应该如何设计它?如果用户未登录,则不应浏览 menu.jsp。

谢谢西杜

4

6 回答 6

0

编写一个Servlet Filter并映射所有需要的 jsp 页面authentication

在过滤器中检查天气用户是否登录。

请参阅此处有关servlet 标记信息的示例

于 2013-09-13T10:51:47.023 回答
0

如果他之前访问过另一个页面,您可以检查用户是否附加了某种会话。否则,您可以将他发送回或重定向到索引页面。

于 2013-09-13T10:53:18.250 回答
0

您必须开发一个过滤器,将所有未登录的用户重定向到 login.jsp 对于这个问题,在用户登录到您的站点后,为他设置一个会话并在过滤器中检查会话是否有效

于 2013-09-13T10:53:27.200 回答
0

建议在访问任何页面之前进行身份验证,在menu.jsp中生成一个小应用程序时做一件事,保留小逻辑进行身份验证,稍后您可以将完整的结构更改为MVC,您可以完全实现它......

希望这对你有帮助,一切顺利

于 2013-09-13T10:53:54.060 回答
0

由于您尚未添加任何代码,因此我会提示您如何完成。

当您登录时,在会话中设置了用户对象,当您注销时,会话被清除。

当您在 menu.jsp 页面上时,首先您必须检查用户对象是否在会话中,如果没有,您必须执行重定向代码。否则,您必须继续其余的逻辑。

于 2013-09-13T10:53:56.233 回答
0

如果用户成功登录,您可以通过检查一些会话属性(如 session.getAttribute)来检查它,您可以在 servlet 中设置该属性。

于 2013-09-13T10:56:17.947 回答