防刷新计数器 JSP写代码
思路:用session对象禁止客户通过刷新页面增加计数。当客户刷新页面时,我们可以使用session的publicbooleanisNew()方法判断是否是一个新的客户,...
思路:用session对象禁止客户通过刷新页面增加计数。当客户刷新页面时,我们可以使用session的public boolean isNew() 方法判断是否是一个新的客户,因为客户刷新页面不会改变服务器分配给该客户的session对象。
方法:JSP中定义一个countPeople()方法实现计数功能。如果是新客户,则将countPeople.txt文件里的计数器变量值增加1。
运行结果:
1). 第一次启动index.jsp页面,运行结果,如图1所示,刷新多次后由于session不变,所以计数器始终不会累加。
图1 第一次执行index.jsp页面
2). 打开一个新的IE浏览器,再次执行index.jsp页面,如图2所示。
把源代码给我 邮箱763904670@qq.com 谢谢!!!! 展开
方法:JSP中定义一个countPeople()方法实现计数功能。如果是新客户,则将countPeople.txt文件里的计数器变量值增加1。
运行结果:
1). 第一次启动index.jsp页面,运行结果,如图1所示,刷新多次后由于session不变,所以计数器始终不会累加。
图1 第一次执行index.jsp页面
2). 打开一个新的IE浏览器,再次执行index.jsp页面,如图2所示。
把源代码给我 邮箱763904670@qq.com 谢谢!!!! 展开
1个回答
展开全部
参考一下:
<%@ page import="java.io.*,java.util.*" %>
<%
// 获取session创建时间
Date createTime = new Date(session.getCreationTime());
// 获取最后访问页面的时间
Date lastAccessTime = new Date(session.getLastAccessedTime());
String title = "Welcome Back to my website";
Integer visitCount = new Integer(0);
String visitCountKey = new String("visitCount");
String userIDKey = new String("userID");
String userID = new String("ABCD");
// 检测网页是否由新的访问用户
if (session.isNew()){
title = "Welcome to my website";
session.setAttribute(userIDKey, userID);
session.setAttribute(visitCountKey, visitCount);
}
visitCount = (Integer)session.getAttribute(visitCountKey);
visitCount = visitCount + 1;
userID = (String)session.getAttribute(userIDKey);
session.setAttribute(visitCountKey, visitCount);
%>
<html>
<head>
<title>Session Tracking</title>
</head>
<body>
<center>
<h1>Session Tracking</h1>
</center>
<table border="1" align="center">
<tr bgcolor="#949494">
<th>Session info</th>
<th>Value</th>
</tr>
<tr>
<td>id</td>
<td><% out.print( session.getId()); %></td>
</tr>
<tr>
<td>Creation Time</td>
<td><% out.print(createTime); %></td>
</tr>
<tr>
<td>Time of Last Access</td>
<td><% out.print(lastAccessTime); %></td>
</tr>
<tr>
<td>User ID</td>
<td><% out.print(userID); %></td>
</tr>
<tr>
<td>Number of visits</td>
<td><% out.print(visitCount); %></td>
</tr>
</table>
</body>
</html>
追问
大神 方便留个联系方式吗!
追答
已私信,请查收
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询