gpt4 book ai didi

java - JSP session 不为空

转载 作者:行者123 更新时间:2023-11-30 05:52:43 24 4
gpt4 key购买 nike

我是 JSP 的新手,在我的 web 应用程序的特定页面上,我试图确定用户是否已登录。为此,我正在检查 session 是否存在。如果 session 不存在,那么我会将用户重定向到登录页面。

下面的代码让我很困惑

<%
if (null == session)
out.println("session is null");
else
out.println("session is not null");

if (null == request.getSession(false))
out.println("request.getSession() is null");
else
out.println("request.getSession() is not null");
%>

在任何情况下都会产生以下输出:

session is not null request.getSession() is not null 

我不明白为什么 session 存在,即使我没有创建它。如何检查用户是否登录?

提前致谢。

最佳答案

默认情况下, session 由容器为您创建。用于 JSP

<%@ page session="false" %>

在您的 JSP 上禁用 session 创建。

为了检查用户是否存在,您需要在用户登录后在服务器端的 session 中放置一些 token / key 。就像

request.getSession().setAttribute("usertoken","authenticated");

在 JSP 上,只需检查属性是否存在且不为空

if ("authenticated".equals(session.getAttribute("usertoken")) {
// do something
}

关于java - JSP session 不为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11374178/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com