session对象.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
session对象.ppt

session对象 客户与服务器的通讯是通过HTTP协议完成的。但是,HTTP协议是一种无状态协议。即,一个客户向服务器发送请求(request),然后服务器返回响应(response),连接就关闭了。服务器端不保留客户与服务器每一次连接的信息,因此,服务器无法判断上下两次连接是否是同一客户。要想记住客户的连接信息,必须使用会话对象(session)。session对象记录了每个客户与服务器的连接信息。 1.会话 从一个客户打开浏览器连接到服务器的某个服务目录(这其间,客户访问的是同一web目录中的网页),到客户关闭浏览器,这一过程称为一个会话。这时,在服务器端,系统为该客户创建了一个session对象。在客户端,系统为该客户创建了Cookie对象。一个客户对同一服务目录中不同网页的访问属于同一会话。 2.客户的session对象与服务目录 当一个客户首次访问服务目录中的一个JSP页面时,JSP引擎为该客户创建一个session对象。同一客户访问的服务目录不同,JSP引擎为该客户创建不同的session对象。从时间上看,若客户离开先前的服务目录,连接到其它服务器或者服务目录,当再次回到先前服务目录时,JSP引擎不再给客户分配新的session对象,而是使用先前的session对象。只有当客户关闭浏览器或这个session对象达到了最大生存时间,该客户的session 对象才被取消,这时服务器与客户的会话关系消失。 3.Session对象与Cookie 当JSP引擎为客户创建一个session对象后,这个session对象被分配了一个String类型的ID号,JSP引擎同时将此ID号发送到客户端,存放在Cookie中.这样,代表同一客户会话的session对象和Cookie对象建立了一一对应关系.即,每一客户会话信息保存在session/Cokkie对中. 4.Session对象与线程  当多个客户点击同一页面时,JSP引擎为每个客户启动一个线程,这就是说,一个客户对应一个线程,每个线程对应一个session对象,每个线程的session对象不同。 5.Session对象生命周期 从一个客户会话开始到会话结束这段时间称为session对象的生命周期。具体上说,指客户访问某web目录下的页面到关闭浏览器,离开该web目录,这段时间成为session对象的生命周期。 6.Session对象的常用方法 public void setAttribute(String key.Object obj) session 对象类似于散列表,可以调用该方法将参数Object指定的对象obj添加到session对象中,并为添加的对象指定了一个索引关键字。如果添加的两个对象的关键字相同,则先前添加的对象被清除。 public Object getAttibue(String key) 获取session对象中含有的关键字是key的对象。由于任何对象都可以添加到session对象中,因此用该方法取回对象是,应强制转化为原来的类型。 public Enumeration getAttributeName() session 对象调用该方法产生一个枚举对象。该枚举对象使用nextElemets()方法遍历session对象所含有的全部对象。 public long getCreationTime() session对象调用该方法可以获取该对象创建的时间。单位是毫秒(从1970年7月1日午夜起至该对象创建时刻所走过的毫秒数)。 public long getLastAccessedTime() 获取当前session对象最后一次被操作的时间,单位是毫秒 public int getMaxInactiveInterval() 获取session对象的生存时间 public void setMaxInactiveInterval(int n) 设置session对象的生存时间(单位是秒) public void removeAttribue(String key) 从当前session对象中删除关键字是key的对象。 public String getId() 获取session对象的编号 invalidate() 使session对象无效 public boolean isNew() 判断是否是一个新的客户 信息的保存和获取 [例子]将购买者的姓名、商品名保存在session对象中,实现同一web目录下的页面对session对象中的信息共享。 问题分析: 创建三个页面,第一个页面输入姓名,第二个页面输入商品名,第三个页面实现结帐处理。 程序结构:   本程序包含三个JSP页面文件,三个

文档评论(0)

gshshxx + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档