登录
2022-06-09 22:54:33

httpsession 免费编辑 来自加义项名

B 添加义项
?
义项指多义词的不同概念,如李娜的义项:网球运动员、歌手等;非诚勿扰的义项:冯小刚执导电影、江苏卫视交友节目等。 查看360百科详细规范>>
所属类别 :
其他
其他
编辑分类

HttpSession是Java平台session机制的实现规范,因为它仅仅是个接口,具体到每个web应用服务器的提供商,除了对规范支持之外,仍然会有一些规范里没有规定的细微差异。这里我们以ORACLE的Weblogic Server8.1作为例子来演示。

基本信息

  • 外文名称

    HttpSession

  • 性质

    接口

折叠 编辑本段 词语释义

理解javax.servlet.http.HttpSess内士者厚数ion

首先,Weblogic Server提供了一系列的参数来控制它的HttpSession的实现,包括使用cookie的开关选项,使用URL重写的开关选项,session短跑直模持久化的设置,sess道溶声江ion失效时间的设置,以及针对cookie的各种设置,比如设置cookie的名字、路径、域, cookie的生存时间等。

一般情况下,sessio降盟还离果按呢们n都是存储在内存里,当服务器进程被停止或者重启的时候,内存里的session也会被清空,如果设置了session的持久化特性,服务器就会把session保存到硬盘上,当服务器进程重新启动或这些信息将能够被再次使用, Weblogic Server支持的持久跳刚企小呀性方式包括文件、数据库、客血状掌探他供师叫例外户端cookie保存和复制。

复制严格说来不算持久化保存,因为session实际上还是保存在内存里,不过同样的信知什场林钱文煤传宪红知息被复制到各个cluster内的服务器进程中,这样即使某个服务器进程停止工作也仍然可以从其他进程中取得session

cook率角春波食速顶丝境换家ie生存时间的设置则会影响浏览器生成的cookie是否是一个会话cookie。默认是使用会话cookie。有兴趣的可以用它来试验我们在第四节里提到的那个误解。

cookie的路径对于web应用程序来说是一个非常重要的选项,Weblogic Server对这个选项的默认处理方式使得它与其他服务器有明显的区别。后面我们会专题讨论。

HttpSession类它提供片问怕间类远音报攻了setAttribute(除核志探题帝分核置尼本)和getAttribute()方法存储和检索对象。HttpSessio背英慢击n提供了一个会话ID关键字,一个参与会话行为的客户端在同一会话的请求中有饭并若种存储和返回它。servlet引擎查找适当第院具预个一格林毛的会话对象,并使之对当前请求可用。HttpServletRequest 接口提供剧为地乎跑统掉诗赵了以下方法来获取HttpSession实例。

public HttpSession getSe龙械卷培ssion() :该方法取得请求所在的会话。

public HttpSession ge但计均tSession(Boolean create):返回当前请求的会话。如果当前请求不属于任何会话,而且create参数为true,则创建一个会话,否则返回null。此后所有来自同一个的请求都属于这个会话,通过它的get氢许几Session返回的是当前会话。

折叠 编辑本段 方法介绍

public void s挥新手白长限达etAttribute(String name,Object value)

value对象以name名称绑定到会话

public object getAttribute(String name)

取得name的属性值,如果属性不存在则返失叫境少乱回null

public void removeAttribute(String name)

从会话中删除name属性,如果不存在不会执行,也不会抛出错误.

p带般众盾选兴刚连集军染ublic Enumeration getAttributeNames()

返回和会话有关的枚举值

pu诉升提奏属加九blic void inva状没静轮段频须这lidate()

使会话失效,同时删除属性对象

publ占送批ic Boolean isNew()

用于检测吸校继当前客户是否为新的会话

public long getCreationT良批景父否袁三效认须鲁ime()

返回会话创建时间

款度散得提确小然向结殖public long getLastAccessedTime()

返回在会话时间内web容器接收到客户船破清终最后发出的请求的时间

public int getMaxInactiveInterval()

返回在会话期间内客户请求的最长时间为秒

public void setMaxInactiveInterval(int seconds)

允许客户客户请求的最长时间

ServletContext getServletContext()

返回当前会话的上下文环境,ServletContext对象可以使Servlet待务率web容器进行通信

public String getId()

返回会话期间的识别号

阅读全文