490 次浏览
此示例描述了如何使用 HttpSession 对象查找会话的创建时间和上次访问时间。如果不存在会话,我们将与请求关联一个新会话。示例 在线演示 会话跟踪 会话信息 值 ... 阅读更多
4K+ 次浏览
JSP 使用 servlet 提供的 HttpSession 接口。此接口提供了一种跨页面请求或网站访问识别用户或存储有关该用户信息的方法。默认情况下,JSP 启用了会话跟踪,并为每个新客户端自动实例化一个新的 HttpSession 对象。禁用会话跟踪需要通过将页面指令 session 属性显式设置为 false 来关闭它,如下所示:JSP 引擎通过隐式 session 对象向 JSP 作者公开 HttpSession 对象。由于会话对象已提供给 JSP 程序员,因此程序员可以立即开始存储和 ... 阅读更多
HTTP 是一种“无状态”协议,这意味着每次客户端检索网页时,客户端都会打开与 Web 服务器的单独连接,并且服务器不会自动保留任何先前客户端请求的记录。在 Web 客户端和服务器之间维护会话让我们现在讨论一些在 Web 客户端和 Web 服务器之间维护会话的选项:Cookie Web 服务器可以为每个 Web 客户端分配一个唯一的会话 ID 作为 Cookie,对于客户端的后续请求,可以使用收到的 Cookie 来识别它们。这可能不是一种有效的方法,因为浏览器 ... 阅读更多
2K+ 次浏览
删除 Cookie 非常简单。如果要删除 Cookie,只需按照以下三个步骤操作:读取已存在的 Cookie 并将其存储在 Cookie 对象中。使用 setMaxAge() 方法将 Cookie 年龄设置为零以删除现有 Cookie。将此 Cookie 添加回响应标头。以下示例将向您展示如何删除名为“first_name”的现有 Cookie,以及下次运行 main.jsp JSP 时,它将返回 first_name 的 null 值。示例 在线演示 读取 Cookie 读取 Cookie ... 阅读更多
1K+ 次浏览
要读取 Cookie,需要通过调用 HttpServletRequest 的 getCookies() 方法创建一个 javax.servlet.http.Cookie 对象数组。然后循环遍历数组,并使用 getName() 和 getValue() 方法访问每个 Cookie 和关联的值。现在让我们读取在上一个示例中设置的 Cookie:示例 在线演示 读取 Cookie 读取 Cookie 让我们现在将上述代码放在 main.jsp 文件中并尝试访问它。如果您设置了 ... 阅读更多
使用 JSP 设置 Cookie 包括三个步骤:步骤 1:创建 Cookie 对象您使用 Cookie 名称和 Cookie 值(都是字符串)调用 Cookie 构造函数。Cookie cookie = new Cookie("key", "value");请记住,名称和值都不应包含空格或以下任何字符:[ ] ( ) = , " / ? @ : ;步骤 2:设置最大年龄您使用 setMaxAge 指定 Cookie 有效的时长(以秒为单位)。以下代码将设置 Cookie 为 24 小时有效。cookie.setMaxAge(60*60*24);步骤 3:将 Cookie 发送到 ... 阅读更多
203 次浏览
Cookie 通常设置在 HTTP 标头中(尽管 JavaScript 也可以直接在浏览器上设置 Cookie)。设置 Cookie 的 JSP 可能会发送如下所示的标头:HTTP/1.1 200 OK Date: Fri, 04 Feb 2000 21:03:38 GMT Server: Apache/1.3.9 (UNIX) PHP/4.0b3 Set-Cookie: name = xyz; expires = Friday, 04-Feb-07 22:03:38 GMT; path = /; domain = tutorialspoint.com Connection: close Content-Type: text/html如您所见,Set-Cookie 标头包含名称值对、GMT 日期、路径和域。名称和值将进行 URL 编码。expires 字段是指示 ... 阅读更多
262 次浏览
Cookie 是存储在客户端计算机上的文本文件,它们用于各种信息跟踪目的。JSP 使用底层 servlet 技术透明地支持 HTTP Cookie。识别和返回用户涉及三个步骤:服务器脚本向浏览器发送一组 Cookie。例如,名称、年龄或身份证号码等。浏览器将此信息存储在本地机器上以供将来使用。当浏览器下次向 Web 服务器发送任何请求时,它会将这些 Cookie 信息发送到服务器,并且服务器使用这些信息来识别用户,或者可能用于其他 ... 阅读更多
703 次浏览
您的 Web 应用程序可能会定义几个具有特定用途的不同过滤器。假设您定义了两个过滤器 AuthenFilter 和 LogFilter。除了需要创建如下所示的不同映射之外,其余过程将保持如上所述: LogFilter LogFilter test-param 初始化参数 AuthenFilter AuthenFilter test-param 初始化参数 LogFilter /* AuthenFilter /* 过滤器应用程序顺序过滤器映射元素的顺序 ... 阅读更多
561 次浏览
以下示例演示了如何每次访问任何 JSP 文件时都打印客户端的 IP 地址和当前日期时间。此示例将让您了解 JSP 过滤器的基本知识,但您可以使用相同的概念编写更复杂的过滤器应用程序:// 导入所需的 Java 库 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.util.*; // 实现 Filter 类 public class LogFilter implements Filter { public void init(FilterConfig config) throws ServletException { // 获取初始化参数 String testParam = config.getInitParameter("test-param"); // 打印初始化参数 ... 阅读更多