在 servlet 中跟踪会话的不同方法有哪些。是否可以使用隐藏文件?
答案 0 :(得分:6)
有三种方式
其中一种方法是使用HttpSession
您可以使用
HttpSession session = request.getSession();
或者您可以使用HttpSession session = request.getSession(true)
。这两个语句都表示如果与该用户存在关联会话,则返回该会话或创建新会话。如果传递false
,则不会创建新会话。
答案 1 :(得分:3)
会话可以通过以下方式进行维护
答案 2 :(得分:2)
跟踪servlet中会话的不同方法是:
使用会话API: 一个示例代码是:
//store the username object in the session-scope
HttpSession session = request.getSession();
session.setAttribute("username",username);
要检索会话属性,请使用session.getAttribute()
Username username = (Username) session.getAttribute("username");
使用Cookie API: 示例代码:
String name = request.getParameter("username");
Cookie c = new Cookie("username",name);
response.addCookie(c);
应该注意的是,使用cookie进行会话管理的一个主要缺点是,有时客户端可能会关闭cookie。
使用网址重写: URL重写策略不像cookie策略那样透明。 它可以用以下形式实现:
//present the form
out.println("<form action='"+response.encodeURL("login.")+"'");
也可以使用隐藏表格字段。
答案 3 :(得分:1)
答案 4 :(得分:0)
会话可以流畅的方式维护
HttpSession
取决于Cookie。它使用cookie将会话ID存储在客户端系统中。
答案 5 :(得分:0)
答案 6 :(得分:0)
假设实现HTTP会话的servlet接收来自三个不同客户端(浏览器)的HTTP请求。对于每个客户端请求,servlet必须能够确定客户端请求所属的HTTP会话。每个客户端请求只属于servlet跟踪的三个客户端会话之一。目前,该产品提供了三种跟踪会话的方式:
With cookies
With URL rewriting
With SSL information
答案 7 :(得分:0)
有各种会话跟踪机制
隐藏表单字段 - &gt;
在这种情况下,我们使用隐藏文本字段来维护用户的状态。 记住客户信息只是程序员的伎俩。