session与application对象

宝剑锋从磨砺出,梅花香自苦寒来。这篇文章主要讲述session与application对象相关的知识,希望能为你提供帮助。
一、session与application
1、session的关系图

session与application对象

文章图片

显示session的ID
session与application对象

文章图片

  代码如下:
1、先创建一个t1.jsp页面,创建一个session,设置键和值
session与application对象

文章图片

2、然后另外创建一个t2.jsp页面,获取t1.jsp中session的值
session与application对象

文章图片

还可以重新赋值给session
session与application对象

文章图片

 
【session与application对象】  总结:
客户端的session  其实是标记了你的请求来自哪个浏览器
问题1:永远都一样吗?
        答:重启了浏览器,你的session id就改变了,
结果会导致,再无法取回原来在服务端保存的数据。
 
问题2:假设客户端的session id不变(浏览器不重启),
那么服务器会一直保存这个session的数据吗?
        答:服务端(tomcat)如果20分钟,没有人动,
那么这个session就自动销毁。
 
Session的应用场景:一般而言,就是用于记录你的登录信息
  2、application
application的关系图
session与application对象

文章图片

代码:
与session基本一致
1、先创建一个a1.jsp页面,在创建一个application,并设置键和值
session与application对象

文章图片

2、然后另外创建一个ta2.jsp页面,获取a1.jsp中application的值,
session与application对象

文章图片

 
application的总结:
对于application在整个项目中,变量是有且只有1个,所有客户端都共享同一个application对象。
人类社会,就是要解决资源的分配问题
那些应用场景是资源共享呢?
1、  抢火车票
2、  抽奖
3、  统计点击次数
 
 
Session属性和application的异同
 
1、  session和application、request  在配置属性,代码一样的
 
2、  session对每一个用户(浏览器)是单独的,而application的所有用户(浏览器)是共享的一个的。从使用角度来讲,共享同1个变量会出现资源争夺的冲突。(绝大部分时候都不用application的)
 
3、  session服务器默认只保存20分钟(可以修改),而application会一直存在,直到tomcat关闭。

    推荐阅读