- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用session实现计数器
使用session实现真实的计数器
在上一章介绍过一个简单计数器,虽然实现了计数功能,但只要一刷新网页,计数器的数值就增加,反映的访问人数不真实。用户是站点的第5位访问者,怎样刷新网页都应还是第5位,即便是他访问了站点的其他网页,又回到计数器所在的网页,计数器仍然显示是第5位,这才是真实的计数器。本范例就使用session的特性,实现这种真实计数器的功能。
范例的演示和代码清单
演示步骤:
启动JSP引擎后,启动IE,在地址栏键入:8080/ch3/ch3-31.jsp,如图3-12所示:
图 3-12
刷新当前网页,会发现计数器的数值不发生变化,多次刷新数值都不发生变化。
这时如果是在局域网上体验范例,再从另外两台计算机访问本机的范例。那两台计算机会显示是“第2位访客”和“第3位访客”,他们刷新网页,计数器的数值也不会发生变化。
访问范例网页的所有计算机(包括本机),点击“返回”,然后再进入本范例网页,计数器仍然是原来的数值。(即便是访问多个其他网页后,再进入本范例网页,计数器也不发生变化。)
此时如果在局域网上有一台计算机点击“注销返回”,然后再进入本范例网页,计算机屏幕上显示是“第4位访客”,其他依次注销,然后再进入本范例网页的计算机,将是“第5位访客”和“第6位访客”。
如果没在局域网上,只在本机上体验范例。每次注销后再进入本范例网页,计数器将自动加一。
从范例的演示,可以进一步体验到session的魅力和作用。还有一点要说明,session默认的生命周期是1800秒(30分钟),如果在这个时间内,没有再次使用session,他将自动消失。
下面是范例的代码:
◇-◇-◇-◇-◇-◇-◇-◇-◇ Session计数器 ◇-◇-◇-◇-◇-◇-◇-◇-◇
范例ch3-31jsp
%@ page contentType=text/html; charset=gb2312 language=java import=java.sql.* %
html
titleSession计数器/title
body
p
%! int count=0;%
%
String usercount; //usercount 用来记录使用者上网时的人数
request.getSession(true); //建立使用者的 session
if(session.isNew()) //判断使用者的 session是否为新创建的
{
count++;
usercount = String.valueOf(count); //将数值型数据转换成字符串型数据
session.putValue(usercount,usercount); //写入session
}
out.print(您是本站的第 font color=red size=5);
out.print(session.getValue(usercount));
out.print( /font位访客);
%
/p
pa href=index.htm返回/a/p
pa href=ch3-32.jsp注销返回/a/p
/body
/html
◇-◇-◇-◇-◇-◇-◇-◇-◇ 注销Session ◇-◇-◇-◇-◇-◇-◇-◇-◇
范例ch3-32.jsp
%@ page contentType=text/html; charset=gb2312 language=java import=java.sql%
html
headtitle注销Session/titlestyle type=text/css.STYLE2 {color: #0000FF}/style/head
body
% session.invalidate(); //删除session
response.setHeader(Refresh,1;URL=index.htm); %
Pimg src=img/pass.gif alt=注销 width=200 height=25/P
h2注销 span class=STYLE2当前用户/span /h2
/body
/html
二、JSP动态网页的代码分析
范例ch3-31.jsp的设计思路是,定义一个整型变量用于计数,创建session保存转换成字符串型的计数数值。然后从session中提取数据送到屏幕上显示。而在session创建之后,写入数据之前,要判断session是否为本次运行JSP网页新创建的。如果是新创建的,整型变量加一写入session,从session中提取数据送到屏幕上显示,新用户访问网页,整型变量都加一,因此每个新用户计
文档评论(0)