session 和 application 的区别

session 和 application 的区别

	<% 
	Object o = application.getAttribute("count"); 
	if(o==null){
		application.setAttribute("count", 1);
	}else{
		application.setAttribute("count",Integer.parseInt(o.toString())+1);
	}
	out.println(application.getAttribute("count"));
	%>
	
	<% 
	Object o2 = session.getAttribute("count"); 
	if(o2==null){
		session.setAttribute("count", 1);
	}else{
		session.setAttribute("count",Integer.parseInt(o2.toString())+1);
	}
	out.println(session.getAttribute("count"));
	%>

我试了一下,两者都可以计数。当我在console里terminate这个server之后然后重新运行呢,session继续计数,但是application却重新从0计数了。我想问的是,我在eclipse里面重新启动server相当于我平时浏览网页时关掉这个网站吗?还是关掉了chrome浏览器?怎样才能让session重新计数呢?(在实际的浏览网页过程中,不是在eclipse中,我知道在eclipse里把tomcat下的当前servers删掉再重新加上运行就行了session会重新计数,我主要疑惑的是这些eclipse里的操作对应我们平时浏览网页时的操作。。)

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,同学打断server重新启动后,在网页中session是继续计数而不是重新开始吗?同学刷新网页了吗?建议同学清空缓存试试。在这边使用session,打断后重新启动,session是0开始重新计数的。另外在eclipse中打断server等于关闭了服务器,这个网站是不能访问的。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快!

  • 刘鑫同学 提问者 #1
    server就算不打断,清空缓存后seesion也会从0计数,但是aplication会接着计数,这是为什么呢?
    2018-11-23 00:00:54
  • 好帮手慕阿满 回复 提问者 刘鑫同学 #2
    因为session对象主要用于会话跟踪,当你清空缓存后,这个账号信息也不存在了,再次登录相当与创建一个新的session对象,所以会从0开始计数。
    2018-11-23 13:32:26
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
从网页搭建入门Java Web2018版
  • 参与学习           人
  • 提交作业       1088    份
  • 解答问题       10205    个

如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师