Servlet Session简介说明

Java-教程王 Servlet 发布时间:2021-08-13 22:27:26 阅读数:1425 1

Session简介

Session是服务器端的概念,只有服务器端才有Session的信息
Session的作用用于标识Web客户端

Session标识客户端的原理

----当客户端支持Cookie时
Session主要借助于Cookie同客户端进行关联,
Web容器会为每个客户端分配一个唯一的Session会话ID,并这个标识作为Cookie信息存于客户端中,后续客户端通过借助这个Cookie向服务器表明自己的身份

当客户端不支持Cookie时
我们可通过在html页面中创建一个隐藏域,然后存储SessionId,如下所示:
  <input type="hidden" name="sessionid" value="9112472425252">
在每次get请求或post请求时,将此值提交给服务器,
并通过此值来标识客户端的身份

HttpSession对象

Servlet容器对外提供了HttpSession 接口,
此接口可生成客户端标识,可通过此接口识别用户
我们在编写Servlet代码时,可使用此接口创建Http客户端和服务端之间的Session会话
如:
  Servlet中获取HttpSession对象的方法

HttpSession session = request.getSession();

HttpSession拥有以下常用的方法,如下所示:
序号方法 & 描述
1public Object getAttribute(String name)
该方法返回在该 session 会话中具有指定名称的对象,如果没有指定名称的对象,则返回 null。
2public Enumeration getAttributeNames()
该方法返回 String 对象的枚举,String 对象包含所有绑定到该 session 会话的对象的名称。
3public long getCreationTime()
该方法返回该 session 会话被创建的时间,自格林尼治标准时间 1970 年 1 月 1 日午夜算起,以毫秒为单位。
4public String getId()
该方法返回一个包含分配给该 session 会话的唯一标识符的字符串。
5public long getLastAccessedTime()
该方法返回客户端最后一次发送与该 session 会话相关的请求的时间自格林尼治标准时间 1970 年 1 月 1 日午夜算起,以毫秒为单位。
6public int getMaxInactiveInterval()
该方法返回 Servlet 容器在客户端访问时保持 session 会话打开的最大时间间隔,以秒为单位。
7public void invalidate()
该方法指示该 session 会话无效,并解除绑定到它上面的任何对象。
8public boolean isNew()
如果客户端还不知道该 session 会话,或者如果客户选择不参入该 session 会话,则该方法返回 true。
9public void removeAttribute(String name)
该方法将从该 session 会话移除指定名称的对象。
10public void setAttribute(String name, Object value)
该方法使用指定的名称绑定一个对象到该 session 会话。
11public void setMaxInactiveInterval(int interval)
该方法在 Servlet 容器指示该 session 会话无效之前,指定客户端请求之间的时间,以秒为单位。
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/Servlet/202108/197.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者