比较session和application之间的差异

yueer0531 贡献于2016-11-27

作者 ASUS-PC  创建于2014-10-29 12:08:00   修改者ASUS-PC  修改于2016-11-21 13:38:05字数1490

文档摘要:用于保存每个用户的专用信息.每个客户端用户访问时,服务器都为每个用户分配一个唯一的会话ID(Session ID) . 她的生存期是用户持续请求时间再加上一段时间(一般是20分钟左右).Session中的信息保存在Web服务器内容中,保存的数据量可大可小.当Session超时或被关闭时将自动释放保存的数据信息.由于用户停止使用应用程序后它仍然在内存中保持一段时间,因此使用Session对象使保存用户数据的方法效率很低.对于小量的数据,使用Session对象保存还是一个不错的选择.
关键词:

 比较Session和Application之间的差异 用Session对象编写一个网页访问计数器 <%@page contentType="text/html" pageEncoding="UTF-8"%> session对象应用实例1 <% int number =10000; //从session对象获取number Object obj = session.getAttribute("number"); if(obj==null){ //设定session对象的变量的值 session.setAttribute("number",String.valueOf(number)); } else { //取得session对象中的number变量 number=Integer.parseInt(obj.toString()); //统计页面访问次数 number+=1; //设定session对象的number变量值 session.setAttribute("number",String.valueOf(number)); } %> 你是第<%=number%>个用户访问本网站。 用Application对象编写一个网页访问计数器 <%@page contentType="text/html" pageEncoding="UTF-8"%> session对象应用实例1 <% String strNum=(String)application.getAttribute("count"); int count=0; if(strNum!=null) count=Integer.parseInt(strNum)+1; application.setInitParameter("count", String.valueOf(count)); %> 你是第<%=application.getAttribute("count")%>个用户访问本网站。 Session 用于保存每个用户的专用信息.每个客户端用户访问时,服务器都为每个用户分配一个唯一的会话ID(Session ID) . 她的生存期是用户持续请求时间再加上一段时间(一般是20分钟左右).Session中的信息保存在Web服务器内容中,保存的数据量可大可小.当Session超时或被关闭时将自动释放保存的数据信息.由于用户停止使用应用程序后它仍然在内存中保持一段时间,因此使用Session对象使保存用户数据的方法效率很低.对于小量的数据,使用Session对象保存还是一个不错的选择. Application 用于保存所有用户的公共的数据信息,如果使用Application对象,一个需要考虑的问题是任何写操作都要在Application_OnStart事件(global.asax)中完成.尽管使用Application.Lock和Applicaiton.Unlock方法来避免写操作的同步,但是它串行化了对Application对象的请求,当网站访问量大的时候会产生严重的性能瓶颈.因此最好不要用此对象保存大的数据集合.

下载文档到电脑,查找使用更方便

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享文档获得金币 ] 0 人已下载

下载文档