发布于 2015-08-17 14:51:38 | 271 次阅读 | 评论: 0 | 来源: 网络整理
点击计数器会告诉你关于你的网站的某个特定页面上的访问次数。通常附加一个计数器在index.jsp页面假设人们对你的主页第一访问。
要实现一个计数器,您可以利用应用程序隐式对象和相关方法getAttribute() 和 setAttribute()方法。
这个对象是JSP页面在其整个生命周期中的表示。当JSP页面初始化时创建此对象,当JSP页面被jspDestroy()方法删除。
以下是语法在应用程序级设置一个变量:
application.setAttribute(String Key, Object Value);
可以使用上述方法来设置一个计数器变量和重置同一个变量。以下是读取由先前的方法设置变量的方法:
application.getAttribute(String Key);
每次使用访问您的网页,你可以读计数器的当前值,并增加了一个,然后重新设置,以备将来使用。
这个例子显示了如何使用JSP来计算点击量的特定页面上的总人数。如果你要计算你的网站的总点击量,那么你就必须包括相同的代码在所有的JSP页面。
<%@ page import="java.io.*,java.util.*" %>
<html>
<head>
<title>Applcation object in JSP</title>
</head>
<body>
<%
Integer hitsCount =
(Integer)application.getAttribute("hitCounter");
if( hitsCount ==null || hitsCount == 0 ){
/* First visit */
out.println("Welcome to my website!");
hitsCount = 1;
}else{
/* return visit */
out.println("Welcome back to my website!");
hitsCount += 1;
}
application.setAttribute("hitCounter", hitsCount);
%>
<center>
<p>Total number of visits: <%= hitsCount%></p>
</center>
</body>
</html>
现 在,让我们把上面的代码main.jsp和使用URL http://localhost:8080/main.jsp 调用这个JSP。这将显示计数器值,当您刷新页面,其中会增加每次。您可以尝试使用不同的浏览器来访问页面,你会发现,计数器将保持与每一击增加,并会显 示结果的东西如下:
Welcome back to my website! Total number of visits: 12 |
如果你重新启动应用程序,即。 Web服务器,这将重置应用程序变量并且计数器将重置为零。为了避免这种丢失,你可以实现你的计数器在如下专业的方式:
定义一个数据库表用单一数,点击次数指定零值给它。
随着每一击,读取表来获得点击次数的值。
由1增加点击次数的值,并用新的值来更新该表的值。
显示点击次数的新值作为总页面点击计数。
如果你要计算命中在所有页面中,所有页面实现上述逻辑。