java - 使用 servlet 登录,而不是验证->重定向方式

标签 java web-services model-view-controller jsp servlets

我是 servlet 和 jsp 的新手,但我可以编写简单的。 目前在我的网络应用程序的所有页面上,都有一个登录表单,添加了 jsp:include。 我想创建登录机制,以便在验证用户后,我不会被重定向(简单的servlet机制),但登录表单会消失(就像在大多数普通网站中一样)。

我找到的所有示例,它们教我如何验证+重定向。我该如何做我指定的事情呢?如果它很复杂,那么至少有一个大概的方向,现在我什至不知道到底要谷歌什么。

谢谢

最佳答案

您可以使用 session 变量来检查当前是否有任何用户登录。如果用户已登录,则不显示登录表单,可能只显示注销按钮。如果用户未登录,则显示登录表单。

session 变量可以这样设置:

HttpSession ses=request.getSession(); ses.setAttribute("名称",用户);

session 变量可以这样引用:

HttpSession ses=request.getSession(false); if(ses.getAttribute("name")== null) //将标志设置为默认值并检查标志以了解当前没有人登录 别的 //将标志设置为其他值以显示某人当前已登录

编辑

在验证 servlet 和注销 servlet 中使用以下代码(您需要一个)。对于其他情况,您可以使用简单的 if-else 条件。

HttpSession ses=request.getSession(); ses.setAttribute("名称",用户);

还有:

HttpSession ses=request.getSession(); ses.invalidate();

关于java - 使用 servlet 登录,而不是验证->重定向方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10303038/

相关文章:

java - Android - Java如何检查调用了哪个类构造函数

java - 运行 strace 并使用 Java 获取输出

sql - 如何计算呈现 Django 管理页面所需的 SQL 查询数?

objective-c - Objective C 向一个 View Controller 传达另一个已更改的 View Controller

java - 是否可以在 jSTL 中使用 foreach 同时迭代两个项目?

java - 归一化双 vector 不是单位长度到机器精度

java - 确定模式给出的时间范围

web-services - 任何带有 API 的 Latex 网络服务?

web-services - 尝试从中生成 stub (WebService 客户端)时,wsdl 抛出错误

WCF : Could not establish trust relationship for the SSL/TLS secure channel for localhost