ASP教程之揭开ASP奥秘面纱(5)
asp,jsp,php是web开发的三大技术,asp简单易用且有microsoft做靠山,jsp功能强大是因为有java支持,php则开源跨平台.在国内,asp应用范围最广,jsp发展势头最猛,php则处于劣势.这可能与公司的支持以及技术的培训有关.Session对象米仙贤人
我们可使用Session工具存储特定的用户会话所需的信息。当用户在使用程序的页之间跳转时,存储在Session工具中的变量不会扫除,而用户在使用程序中会见页面时,这些变量一直存在。当用户哀求来自使用程序的Web页时,假如该用户还没有会话,则Web服务器将主动创立一个Session工具。当会话过时或被保持后,服务器将停止该会话。
经由过程向客户程序发送独一的Cookie能够办理服务器上的Session工具。当用户第一次哀求ASP使用程序中的某个页面时,ASP要反省HTTP头信息,检察是不是有在报文中着名为ASPSESSIONID的Cookie发送过去,假如有,则服务器会启动新的会话,并为该会话天生一个全局独一的值,在把这个值作为新ASPSESSIONIDCookie的值发送给客户端,恰是利用这类Cookie,能够会见存储在服务器上的属于客户程序的信息。Session工具最多见的感化就是存储用户的首选项。比方,假如用户指明不喜好检察图形,就能够将该信息存储在Session工具中。别的其还常常被用在判别客户身份的程序中。要注重的是,会话形态仅在撑持cookie的扫瞄器中保存,假如客户封闭了Cookie选项,Session也就不克不及发扬感化了。
1、属性
1、SessionID
SessionID属性前往用户的会话标识。在创立会话时,服务器会为每个会话天生一个独自的标识。会话标识以长整形数据范例前往。在良多情形下SessionID能够用于WEB页面注册统计。
2、TimeOut
Timeout属性以分钟为单元为该使用程序的Session工具指定超不时限。假如用户在该超不时限以内不革新或哀求网页,则该会话将停止。
2、办法
Session工具唯一一个办法,就是Abandon,Abandon办法删除一切存储在Session工具中的工具并开释这些工具的源。假如您未明白地挪用Abandon办法,一旦会话超时,服务器将删除这些工具。当服务器处置完以后页时,上面示例将开释会话形态。
<%Session.Abandon%>
3、事务
Session工具有两个事务可用于在Session工具启动和开释是运转历程。
1、Session_OnStart事务在服务器创立新会话时产生。服务器在实行哀求的页之前先处置该剧本。Session_OnStart事务是设置会话期变量的最好机会,由于在会见任何页之前城市先设置它们。
只管在Session_OnStart事务包括Redirect或End办法挪用的情形下Session工具仍会坚持,但是服务器将中断处置Global.asa文件并触发Session_OnStart事务的文件中的剧本。
为了确保用户在翻开某个特定的Web页时一直启动一个会话,就能够在Session_OnStart事务中挪用Redirect办法。当用户进进使用程序时,服务器将为用户创立一个会话并处置Session_OnStart事务剧本。您能够将剧本包括在事务中以便反省用户翻开的页是否是启动页,假如不是,就唆使用户挪用Response.Redirect办法启动网页。
2、Session_OnEnd事务在会话被保持或超时产生。关于利用Session工具必要注重的事项Application工具邻近。
会话能够经由过程以下三种体例启动:
1、一个新用户哀求会见一个URL,该URL标识了某个使用程序中的.asp文件,而且该使用程序的Global.asa文件包括Session_OnStart历程。
2、用户在Session工具中存储了一个值。
3、用户哀求了一个使用程序的.asp文件,而且该使用程序的Global.asa文件利用<OBJECT>标签创立带有会话感化域的工具的实例。
假如用户在指准时间内没有哀求或革新使用程序中的任何页,会话将主动停止。这段工夫的默许值是20分钟。可经由过程在Internet服务办理器中设置“使用程序选项”属性页中的“会话超时”属性改动使用程序的默许超时限定设置。根据您的Web使用程序的请求和服务器的内存空间来设置此值。比方,假如您但愿扫瞄您的Web使用程序的用户在每页仅停止几分钟,就应当延长会话的默许超时价。太长的会话超时价将招致翻开的会话过量而耗尽您的服务器的内存资本。关于一个特定的会话,假如您想设置一个小于默许超时价的超时价,能够设置Session工具的Timeout属性。比方,上面这段剧本将超时价设置为10分钟。
<%Session.Timeout=10%>
固然你也能够设置一个年夜于默许设置的超时价,Session.Timeout属性决意超时价。你还能够经由过程Session工具的Abandon办法显式停止一个会话。比方,在表格中供应一个“加入”按钮,将按钮的ACTION参数设置为包括以下命令的.asp文件的URL。
<%Session.Abandon%>
</p>国内有些大的CRM厂商的ASP就写得不错.无论是概念还是它里面用JAVASCRIPT的能力.并不是说现在的程序员用了ASP.NET来写程序就可以说自己高档了 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 Session:这个存储跟客户端会话过程的数据,默认20分钟失效
页:
[1]