Java web 9、session.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java web 9、session.ppt

第九章 使用会话追踪 本节课的内容: 什么是客户会话 会话的工作机制 维护会话的几种方式 跟踪客户会话 使用HttpSession对象维护会话信息 监视会话对象 1、会话跟踪 1.1 HTTP的通信过程 大家已经很清楚,JSP程序的运行是基于B/S的模式,用户通过客户端浏览器向Web服务器发送一个HTTP请求,服务器收到请求的同时一个连接就建立了,服务器根据请求做必要的处理并生成一个响应信息,然后把它回送给客户端。这个请求-响应过程是在一条网络连接上发生的。这一过程结束后,服务器就关闭了该连接,而不会一直与客户端保持者连接的状态。 (举例:这种情况如同寄信,地址姓名填好后往邮筒内一扔,收信人就能收到。然而,和我们打电话的情形不一样,打电话也需要先建立连接,但在通话过程中,连接需要始终保持着直到通话完毕) 当用户发送另一条请求时,所有的请求-响应循环都将再次发生,客户和服务器之间必须重新建立连接。如下图所示: 举例说明日常生活中大家上网的情况,当你在IE的地址栏中输入 然后回车,一个请求就发生了,这个请求根据URl中的IP地址寻找到服务器,然后服务器再寻找到要执行的页面并进行解析执行,最后把执行的结果发送给客户端,这样我们就看到了新浪的主页面,当我们看到主页面时,这个请求-响应过程就已经发生并结束了,同时,这次连接就不存在了。随后,我们通过点击新浪主页上面的超连接或导航按钮,这时,一个新的请求就发生了,又需要建立一个新的连接,而这个连接是完全不同于上次那个连接的一个新的连接。 还可以在类比到学生之前学习C、C++等编程语言中的函数调用,每次调用函数就会为该函数在内存中开辟运行空间,函数调用结束,这个运行空间就随之释放,所以,一个函数执行的情形就如同JSP页面的执行。 那么,大家可能会问,这样每次用户请求每次都要建立连接,不是挺浪费时间和资源的吗,为什么不能让用户第一次建立的连接一直保持着,以后的每次请求就可以不再建连接了呢?原因是下面要讲到的内容,HTTP协议被设计成为无状态性。 1.2 HTTP的无状态性 Web服务器需要为潜在的大量的用户服务。对于一个服务器,接受一条网络连接就意味着通过一个套接字侦听进入的请求,如果一个服务器同时连接大量的用户(实际情况的确需要这样),这会消耗掉服务器大量的资源,包括线程和内存。 为了能够服务于大量的用户,HTTP被设计成在每一次新请求中都使用新的连接,这种特性称为HTTP的无状态性。 结论:由于HTTP具有的这种无状态性,使得我们不能通过把用户的数据存放在Servlet的实例变量中。 Servlet的实例变量又可称为是JSP页面代码中的变量,我们在第一节课中就讲到:一个JSP页面在执行时会被服务器转译为一个Java类,也就是Servlet类,而页面中的变量对应的就是Servlet的实例变量。我们知道,JSP页面的执行就如同一个被调函数的执行,当执行结果出来之后,页面中保存的数据都将自动消失,因为这个页面运行的空间被系统释放了。所以,我们不能把用户的数据存放在Servlet的实例变量中。 但在实际应用中确实需要把一个页面中用户的数据保存起来,比如说一个网上购物的WEB应用,由很多页面组成,用户登录成功后在一个页面中挑选一种商品,添加到购物车中,然后点击超链接进入下一个商品页面,又挑选一种商品添加到购物车中。注意:这两次选择是在不同的HTTP连接中发生的,而用户希望两次挑选的商品在同一个购物车中一起交付,而不是每选一件商品都要交付一次。这就需要一种机制来唯一的标识用户,以便跟踪用户在站点中的行为。 这就是我们要讲的会话对象session,可以利用会话对象session来记录用户的数据信息。 1.3 会话的概念 从一个用户打开浏览器并连接到服务器开始到用户关闭浏览器离开这个服务器结束称做一个会话。 上面那种在多次HTTP连接间维护用户与同一用户发出的不同请求之间关联的情况称为维护一个会话(session) 当一个用户连接到服务器时可能到不同的页面,而许多WEB程序需要用户在客户端的一系列请求之间能够互相关联,实现不同的页面之间数据的传递和共享,而HTTP协议是无状态的,基于WEB的应用程序需要维护这样的状态,这就需要session,利用session 可以保存访问者访问页面的数据信息。 1.4 会话的特征 会话能够把用户与同一用户发出的不同请求之间关联起来。不同用户的会话应当是相互独立的。 会话一旦建立就应当一直存在,直到用户空闲时间超过了某一个时间界限,容器才应当释放该会话资源。 在会话的存活期间,用户可能给服务器发送了很多请求,该用户的这些请求信息都可以存储在会话中。 网上购物商店的购物车 在上述的网上商店中,用户的会话信息保存在服务器端,用户与服务器之间必须

文档评论(0)

蝶恋花 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档