《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象

上传人:E**** 文档编号:89402173 上传时间:2019-05-24 格式:PPT 页数:35 大小:1.16MB
返回 下载 相关 举报
《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象_第1页
第1页 / 共35页
《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象_第2页
第2页 / 共35页
《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象_第3页
第3页 / 共35页
《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象_第4页
第4页 / 共35页
《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象》由会员分享,可在线阅读,更多相关《《ASP程序设计》-叶潮流-电子教案及习题答案 第7章Session和Application对象(35页珍藏版)》请在金锄头文库上搜索。

1、ASP程序设计课件 2008 年 12 月,中国水利水电出版社,本章导读,本章导读: 在Web应用程序中,Session对象在服务器端存储用户个体滞留期间的信息,以作为服务器跟踪特定用户持续请求的确认信息。Session对象信赖客户端浏览器cookies的支持,如果客户关闭了cookies选项,Session对象也就不能发挥作用。而Application对象则实现站点内所有用户在所有页面之间共享Application对象变量信息。 本章要点:,7.1 Session对象概述,7.1.1 Session对象语法简介 7.1.2 利用Session对象的数据集合 7.1.3 Session对象的属

2、性 7.1.4 Session对象的方法 7.1.5 Session对象的事件,7.1.1 Session对象语法简介,Session对象总是开始于每个客户的每次请求的第一个页面,Web服务器自动创建该客户一个独立的Session对象,它将一直保留到联机结束或指定的时间内用户没有刷新或请求网页为止。语法格式如下: Session.collection|property|method|_event,7.1.1 Session对象语法简介,说明: property表示属性,session对象属性主要有4个,如表7-1所示。,表7-1 session对象属性,7.1.1 Session对象语法简介,

3、说明: collection表示数据集合,session对象数据集合有2个,如表7-2所示。,表7-2 session对象数据集合,7.1.1 Session对象语法简介,说明: method表示方法,session对象方法主要有3个,如表7-3所示。,表7-3 session对象方法,7.1.1 Session对象语法简介,说明: _event表示事件,session对象事件主要有2个,如表7-4所示。,表7-4 session对象事件,7.1.2 利用Session对象的数据集合,利用Contents数据集合和StaticObjects数据集合来存储访问者的临时会话信息。 利用Conten

4、ts数据集合存储变量和常量信息 使用Session的Contents集合可以存储变量和常量信息,其语法格式如下: 格式:session.contents(“sessionname“)=value,7.1.2 利用Session对象的数据集合,说明: sessionname是数据集合中的成员名,或称为变量名; value是数据集合中的成员存储的对应值,或称为变量值; contents是session对象默认集合,实际应用时可以省略。,7.1.2 利用Session对象的数据集合, 利用Contents数据集合存储数组信息 Session对象把数组当成一个整体看待,只能把一个数组整体存入或者取出,

5、用户不能直接更改Session对象数据集合中存储的数组元素的值。,7.1.2 利用Session对象的数据集合,另外contents数据集合还有自己的属性和方法,分别如下: Count属性,返回Contents数据集合中成员的统计总数,是一个整数值,其语法 格式如下: Item属性,设置或返回Contents数据集合中一个特定成员存储的对应值,其语法格式如下: session.contents.item(index) = var_value var_value = session.contents.item(index) 其中,参数index表示一个特定成员的成员名,或其在数据集合中的排列序号

6、。 Key属性,返回Contents数据集合中一个特定成员的成员名,其语法格式如下: var_name= session.contents.key(index) Remove方法,该方法从Contents数据集合中删除一个已定义的变量,其语法格式如下: session.contents.remove(var_name) 其中var_name的数据类型为variant,表示要从contents数据集合中删除的变量名称。 RemoveAll方法,该方法从Contents数据集合中删除所有定义的变量而不终止当前的会话,其语法格式如下: session.contents.removeall(),7.1

7、.2 利用Session对象的数据集合, 利用Contents数据集合存储对象实例信息 不仅可以将标量和数组存储在Session对象的 Contents数据集合中,也可以在Global.asa文件的Application_Onstart和Session_Onstart事件中,存储用Server.Createobject方法建立的具有Session作用域的对象实例。,7.1.2 利用Session对象的数据集合, 利用StaticObjects数据集合存储对象实例信息 Session.StaticObject数据集合也能存储对象实例,不过需要注意的是:Session.StaticObjects数

8、据集合存储的是在Global.asa文件中使用HTML的标记建立的具有Session作用域的对象实例。,7.1.2 利用Session对象的数据集合,利用Staticobjects数据集合存储对象实例 在Global.asa文件中,使用HTML的标记创建具有Session作用域的对象实例时,将Scope属性设置为“Session”,并使用该对象的Progid(程序序号)或Classid(类序号)属性。 如果使用progid,其语法结构如下: 如果使用classid,其语法结构如下: 引用StaticObjects数据集合 StaticObjects数据集合可以用于确定Session对象特定的对

9、象实例变量名,或者用于遍历StaticObjects数据集合并获取所有对象实例变量的对应值。语法格式如下: session.staticobjects(obj),7.1.3 Session对象的属性, Session.SessionID 只读,长整型,返回本次会话的惟一标识符,是在用户登录时由服务器自动生成和分配的临时会话标识符。其语法格式如下: 格式: 说明:一般不用显示,隐藏于页面之中。,7.1.3 Session对象的属性, Session.TimeOut 读/写,整型,返回或设置session对象变量的生存期,默认值为20分钟。如果用户在session对象变量的生存期之内不刷新或请求网

10、页,则session对象变量(会话)将终止。 修改session变量的生存期有两种方法:在IIS组件中修改,参照6.1.2节的图6-1【应用程序配置】对话框中的【启用会话状态(s)】选项;利用session.对象的timeout属性。语法格式如下: 格式:,7.1.3 Session对象的属性, Session.CodePage 读/写,整型,返回和设置字符编码的代码页,默认值为936,即简体中文。用于确保脚本解释生成的结果输出时,选择适合用户本地识别的字符集。不同的语言和场所可能使用不同的代码页。例如,如代码页1262用于美国英语和大多数欧洲语言,代码页932用于日文。语法格式如下: 格式:

11、 说明:也可以在ASP文件的最前面定义代码页,语法格式如下: ,7.1.3 Session对象的属性, Session.LCID 读/写,整型,返回和设置用户本地浏览器的地区代码LCID(local identifier,唯一标识地区的一个国际标准缩写)。默认值为2052,即中国。影响脚本输出如何格式化数字、货币、日期和时间之类的元素。例如,2067定义当前地区的货币符号是“”。语法格式如下: 格式: 说明:也可以在asp文件的最前面定义代码页,语法格式如下: ,7.1.4 Session对象的方法,session对象的方法只有一个,即session.abandon,可以释放清除所有用户的se

12、ssion对象变量并触发session_onend事件。当然如果没有明确调用abandon方法,一旦会话超时或会话页面关闭时,服务器也会将删除这些对象并释放资源。语法格式如下: 格式:,7.1.4 Session对象的方法,注意:调用session.abandon方法后,当前页面没有处理完毕之前,它不会立即清理Session对象变量,即session.abandon之后的代码,仍然能访问已经存在的Session对象变量,直到该页面完全执行(关闭),再次刷新页面,或者访问其他页面,Session对象变量才会真正释放。,7.1.5 Session对象的事件,事件是一种程序运行机制,特点是,当某种情

13、况发生,就会自动执行一段代码。Session对象提供了两个事件:分别是启动时触发的Session_OnStart事件和结束时触发的Session_OnEnd事件。有关Session对象的事件的详细信息请参阅7.3节。,7.2 Application对象概述,7.2.1 Application对象语法简介 7.2.2 使用Application对象的数据集合 7.2.3 使用Application对象方法 7.2.4 使用Application对象事件,7.2.1 Application对象语法简介,Application对象允许在指定的应用程序内的所有用户共享信息,并在服务器运行期间持久的保存

14、数据。而且,Application对象还有控制访问应用层数据的方法和可用于在应用程序启动和停止时触发过程的事件。通过调用该对象的Lock和Unlock方法能够确保多个用户无法同时改变某一属性。 Application对象主要用于:统计网站访问的人数;统计广知点击的次数;创建聊天室;读取数据库中的数据等。 其语法格式如下: 格式:Application.collection|method|_event,7.2.1 Application对象语法简介,说明: collection表示数据集合,Application对象数据集合有2个,如表7-6所示。,表7-6 Application对象数据集合,

15、7.2.1 Application对象语法简介,说明: method表示方法,Application对象方法主要有4个,如表7-7所示。,表7-7 Application对象方法,7.2.1 Application对象语法简介,说明: (3)_event表示事件,Application对象事件有2个,如表7-8所示。,表7-8 Application对象事件,7.2.2 使用Application对象的数据集合,Application对象的数据集合使用方法同Session对象的数据集合一样,可以将变量、常量、数组等信息保存在Application对象中。 利用Application.Conte

16、nts存储简单信息 利用Application.Contents存储数组信息 Application对象把数组当成一个整体看待,只能把一 个数组整体存入或者取出,用户不能直接更改Application对象变量中存储的数组元素的值。 另外,Application.Contents数据集合也有同Session.Contents数据集合一样的属性和方法,其使用方法也同Session.Contents数据集合相同。,7.2.2 使用Application对象的数据集合, 利用Application.Contents存储对象实例 同Session对象一样,不仅可以将标量和数组存储在Application对象的Contents数据集合中,也可以在global.asa文件的Application_OnStart和Session_OnStart事件中,存储用Server.CreateObject方法建立的对象实例。,7.2.2 使用Application对象的数据集合,利用Application.StaticObjects

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号