1 / 32
文档名称:

应用程序状态保存技术.ppt

格式:ppt   页数:32
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

应用程序状态保存技术.ppt

上传人:所以所以 2012/5/30 文件大小:0 KB

下载得到文件列表

应用程序状态保存技术.ppt

文档介绍

文档介绍:第8章状态管理
(时间:2次课,4学时)
第8章状态管理
网站与桌面系统的工作方式不同,与传统的分布式系统也不相同。在桌面系统中,系统资源被独占;在传统的分布式系统中,资源虽然分布在系统的各个环节,但是只要不专门指定,系统总是保持连接的。网站系统虽然也是一个分布式系统,但由于服务器要为众多的用户服务,浏览器与服务器之间的连接是不连续的,状态也是不保持的,HTTP是一个无状态的通信协议。这就是说,在网站系统中,每次浏览器与服务器之间的连接都是暂时的。当浏览器与服务器之间的一次会话结束,它们之间的连接也就自动断开了,下一次会话与本次连接无关,两次连接之间不存在任何联系。
为什么不保持状态呢?这是因为访问网站的用户常常川流不息。如果要求系统将所有被访问的网页的状态都记忆下来,必然会耗费大量的系统资源,严重地降低程序的运行效率。
然而,在网站应用中有的状态却是需要保留的,比如用户在购货车中订购商品、用户登录的身份、对问卷调查所作的回答等,这些状态中有的希望能够保留一定的时间,以便联合处理或者在一定的范围内进行传递和共享。
为此,系统提供了状态管理方法,允许有选择地将一些状态(数据)在一定的时间内持续地保存下来。本章将要介绍几种状态的管理方法,具体内容包括:
状态的类型
视图状态
应用程序状态
会话状态
Cookie状态
Web窗体页的生命周期
第8章状态管理
状态的类型
视图状态
应用程序状态
会话状态
Cookie状态
简单的应用示例
Web窗体页的生命周期
小结
习题
状态的类型
提供了4种状态类型,分别应用于不同的目的。
视图状态:用于保存本窗体页的状态。
应用程序状态:用于保存整个应用程序的状态,状态存储在服务器端。
会话状态:用于保存单一用户的状态,状态存储在服务器端。
Cookie状态:用于保存单一用户的状态,状态存储在浏览器端。
视图状态
什么是视图状态?简单地说,视图状态就是本窗体的状态。保持视图状态就是在反复访问本窗体页的情况下,能够保持状态的连续性。
为什么要保持视图状态?时追求的目标之一,是尽量使网站的设计与桌面系统一致。中的事件处理模型是实现本目标的重要措施(参见第7章),该模型是基于服务器处理事件的,当服务器处理完事件后通常再次返回到本窗体以便继续后续的操作。如果不保持视图状态,就是说当窗体页返回时,窗体页中原有的状态(数据)都不再存在,这种情况下怎样能够继续窗体的操作?
下面用一个简单的示例来说明这种情况。
假定向窗体中放入几个HTML控件(浏览器端控件)。
一个Input(Text)控件:用来输入姓名。
一个Input(Password)控件:用来输入密码。
一个Input(Text)控件:用来输入数量。 使用HTML控件的示例
一个Input(Submit)按钮控件:用来向服务器提交数据。
视图状态
视图状态
这说明在网页中已经自动增加了一个隐含控件,控件的名字为“__VIEWSTATE”。由于这个新控件是隐含控件(type="hidden"),因此增加它并不会改变界面上的布局。控件中的value属性就是窗体页中各个控件以及控件中的数据(状态)。为了安全,这些数据经过哈希函数加密,已经变得难以辨认。当网页提交时,浏览器端将首先将当前网页中的各种状态保留到这个字段中,当网页再次返回到本窗体页时,再自动将把这些状态反馈给返回的窗体页,也就恢复了窗体页中各控件的状态。
视图状态只能在本网页与服务器的往返中保持,而不能在不同网页之间传递,这是和其他状态所不同的地方。在默认情况下几乎所有服务器控件都具有保持视图状态的功能。
保持视图状态带来了好处,但同时也带来一些新的矛盾。如果控件中包括的数据量很大(例如某控件内有数百条记录)时,将会延长网页往返时需要的时间。另外,尽管视图状态存储在窗体页的隐藏域中,并且经过哈希函数的加密处理,但它仍然有可能被篡改,这就导致了潜在的安全问题。
应用程序状态
Application对象是HTTPApplicationState类的实例。Application是属于全局性的对象,用于存放应用程序中多个用户共享的信息。当用户第一次访问某虚拟目录的资源时被创建,退出应用程序或关闭服务器时被撤销。
Application对象利用“键—值”对的字典方法来定义,其中“键”为字符串,代表状态的“名”,“值”可以是任何类型的数据。例如:
Application["Message"] = " MyMsg";
// 给名为"Message"的Application对象赋值" MyMsg"
string Myvar= Application["Messa

最近更新

2026年c语言上机期末考试题(培优) 13页

2026年c语言期末测试题(b卷) 13页

2026年c语言考期末试题学生专用 13页

2026年主管中药师考试备考题100道附完整答案【.. 37页

2026年卧底笔试题库100道含完整答案(考点梳理.. 39页

2026年吉安幼儿师范高等专科学校单招职业技能.. 44页

2026年数组c语言考试题库及参考答案一套 13页

2025年重庆传媒职业学院单招职业倾向性考试题.. 43页

2026江苏常州市儿童医院招聘高层次人才考试考.. 49页

化学试卷答案东北师大附中2025-2026学年上学期.. 1页

2025年黑龙江民族职业学院单招职业倾向性测试.. 45页

2025广信区人民法院公开招聘14人参考题库必考.. 52页

2025江西诚达工程咨询监理有限公司外包员工招.. 45页

2025浦发银行昆明分行招聘考试题库附答案解析.. 48页

2025福建南平建达集团建设工程管理有限公司招.. 47页

2025锦州市部分事业单位赴高校公开招聘2026年.. 47页

2026云南西双版纳州景洪市公安局招聘警务辅助.. 48页

2026年C语言专升本真题(夺冠) 13页

2026年c语言文件考试题库完整版 13页

2026年c语言竞赛试题及答案(各地真题) 13页

2026年c语言设计考试题库学生专用 13页

2026年安徽城市管理职业学院单招职业适应性考.. 37页

2025年湖南省建设工程工程量清单计价办法(新).. 51页

2025年江西信息应用职业技术学院单招职业适应.. 127页

2025年江西信息应用职业技术学院单招职业倾向.. 73页

喝酒给老婆的检讨书 6页

vae乳液低温发泡工艺 29页

《口蹄疫》ppt课件 42页

自然条件对城市的影响 48页

DL T 5783-2019《水电水利地下工程地质超前预.. 36页