一:概述
Http协议使用的是无状态连接:客户浏览器与服务器建立连接-发出请求-得到

响应-关闭连接.话句话说,连接只针对一个请求/响应.由于连接不会持久保留

所以容器认不出做第二个请求的客户与做前一个请求的客户是否是同一个人.

对于容器而言,每个请求都来自于一个新的客户.
在Web编程中共有4种方法,解决此问题.
方法一:表单隐藏字段
<input type='hidden' name='session' value='session/>
该项表单的内容表示在提交表单时,指定的名称和值将包含在get和post数据中

,隐藏字段不会影响呈现给用户的页面外关,相反,它们可以储存固定发送给服

务器的固定的名称和值,而不管用户输入如何.
隐藏字段的用途:1.对用户在网上的访问进行会话跟踪2.为服务器端程序提供

预定义的输入3.储存动态的页面上下文信息.
缺点:只有当每个页面都是动态生成的时候才有效.
方法二:Cookie
Cookie是web服务器发送给客户端浏览器的简短文本信息,第一次访问发送,以

后在访问同一个web站点或者域时浏览器会毫无更改地返回该文本信息.通过让

服务器读取以前发送到客户端的信息,Web应用程序就能够为访问者提供许多方

便,缺点:涉及一些敏感的隐私信息.
方法三:URL重写
原因:解决Cookie
客户端将一些格外的数据追加到标识会话的每个URL地址末尾服务器在该标识

符与其储存的有关该会话的数据之间建立关联
方法四:Session
服务器为客户端创建并维护的用于存放客户状态数据的对象,该对象保存在服

务器上,在客户端与服务器连续的交互过程中Session对象一直保持用户的状态

,直到交互过程结束.

Web应用程序状态管理(上)的更多相关文章

  1. JavaWeb chapeter 5 Web应用程序状态管理

    1.  HTTP协议使用的是无状态连接,对容器而言,每一个请求都来自于一个新的客户. 2. html表单隐藏字段:对用户在网站上的访问进行会话跟踪.为服务器端程序提供预定义的输入.存储动态产生的页面上 ...

  2. 第五章 Web应用程序状态管理

      状态管理概述 Cookie Session URL重写   状态管理概述: HTTP协议使用的是无状态的连接 对容器而言,每一个请求都来自于一个新的客户 这里我们有四种方法来解决这个状态: a:表 ...

  3. 分享一个web应用程序池管理工具

    因为项目在联调阶段由于各种各样的原因需要重启应用程序池,而调试服务器基本都需要远登操作.同样的情况也会发生在线上,如果公司权限控制得比较严格,每次都要多部门的服务器权限申请的话有点麻烦, 所以抽点时间 ...

  4. 基于Web的IIS管理工具

    Servant:基于Web的IIS管理工具   Servant for IIS是个管理IIS的简单.自动化的Web管理工具.安装Servant的过程很简单,只要双击批处理文件Install Serva ...

  5. 使用TreeDMS进行MySQL数据库的Web页面远程管理

    在互联网应用蓬勃发展的时代背景下,各种各样的网络平台,网络应用,移动应用层出不穷,那么这些应用及平台都需要使用到数据库.如何高效的对数据进行日常维护.管理.监控成为迫切需要解决的问题. 基于web的方 ...

  6. 给ambari集群里的kafka安装基于web的kafka管理工具Kafka-manager(图文详解)

    不多说,直接上干货! 参考博客 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8.0.9和0.10以后版本)(图文详解)(默认端口或任意自定义端口 ...

  7. 基于Web的Kafka管理器工具之Kafka-manager启动时出现Exception in thread "main" java.lang.UnsupportedClassVersionError错误解决办法(图文详解)

    不多说,直接上干货! 前期博客 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8.0.9和0.10以后版本)(图文详解)   问题详情 我在Kaf ...

  8. 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8、0.9和0.10以后版本)(图文详解)(默认端口或任意自定义端口)

    不多说,直接上干货! 至于为什么,要写这篇博客以及安装Kafka-manager? 问题详情 无奈于,在kafka里没有一个较好自带的web ui.启动后无法观看,并且不友好.所以,需安装一个第三方的 ...

  9. MyEclipse创建SSH项目(Java web由maven管理)

    JavaEE后台开发,MyEclipse创建SSH项目,MyEclipse创建Java web 由maven管理的SSH项目. Demo工程源码github地址 1.创建SSH项目 1.创建web工程 ...

随机推荐

  1. PostgreSQL Monitor pg_view

    PostgreSQL Monitor pg_view https://github.com/zalando/pg_view Requirements Linux 2.6, python 2.6, ps ...

  2. Leetcode: Convert a Number to Hexadecimal

    Given an integer, write an algorithm to convert it to hexadecimal. For negative integer, two's compl ...

  3. [原创] 关于quartz (spring 中的任务调度器)时间配置

    1.   CronTrigger时间格式配置说明 CronTrigger配置格式: 格式: [秒] [分] [小时] [日] [月] [周] [年] 序号 说明 是否必填 允许填写的值 允许的通配符 ...

  4. UML: 对象图

    摘自http://www.umlonline.org/school/thread-33-1-1.html Line表示类,line为Line的对象,下划线表明为对象,一般对象图用不到. 除了静态方法, ...

  5. centos每天一句命令

    shutdown -h now 立刻关机  后面可以加上关键的时间  -r 重启 reboot 重启  同时记载以下,仅仅给刚刚接触的新手来说的  按两次tab 键会自动命令 cd 到目录下 su r ...

  6. PTPX Power Analysis Flow

    PrimeTime PX工具是PrimeTime工具内的一个feature. PTPX的功耗分析,可以报告出chip,block,cell的各个level的功耗. 使用PTPX可以分析的功耗的方式: ...

  7. sql server中index的REBUILD和REORGANIZE

    参考文献: http://technet.microsoft.com/en-us/library/ms188388.aspx 正文 本文主要讲解如何使用alter index来rebuild和reor ...

  8. 【海岛帝国系列赛】No.3 海岛帝国:运输资源

    海岛帝国:运输资源 [试题描述] YSF考虑到“药师傅”帝国现在资源极度不平均,于是,商讨启用南水北调工程.YZM为首席工程师.现在,YSF由于工作紧张,准备军用物资和民用物资.但他要时时关注运输工程 ...

  9. 项目发布时候出错--项目文件包含 ToolsVersion="12.0"

    项目文件包含 ToolsVersion="12.0".此工具集可能未知或缺失(您可以通过安装相应版本的 MSBuild 来解决该问题),或者该生成因策略原因已被强制更改为特殊 To ...

  10. 在HTML页面获取当前系统时间

    <script language="javascript"> function getCurDate() { var d = new Date(); var week; ...