zoukankan      html  css  js  c++  java
  • JSP 点击量统计

    JSP 点击量统计


    有时候我们需要知道某个页面被访问的次数,这时我们就需要在页面上添加页面统计器,页面访问的统计一般在用户第一次载入时累加该页面的访问数上。

    要实现一个计数器,您可以利用应用程序隐式对象和相关方法getAttribute()和setAttribute()来实现。

    这个对象表示JSP页面的整个生命周期中。当JSP页面初始化时创建此对象,当JSP页面调用jspDestroy()时删除该对象。


    在应用中创建变量的语法:

    application.setAttribute(String Key, Object Value);


    使用上述方法来设置一个计数器变量及更新该变量的值。读取该变量的方法如下:

    application.getAttribute(String Key);

    在页面每次被访问时,你可以读取计数器的当前值,并递增1,然后重新设置,在下一个用户访问时就将新的值显示在页面上。


    介绍如何使用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 ){
    /* 第一次访问 */
    out.println("Welcome to my website!");
    hitsCount = 1;
    }else{
    /* 返回访问值 */
    out.println("Welcome back to my website!");
    hitsCount += 1;
    }
    application.setAttribute("hitCounter", hitsCount);
    %>
    <center>
    <p>Total number of visits: <%= hitsCount%></p>
    </center>
    </body>
    </html>


    复位计数器


    使用以上方法,在web服务器重启后,计数器会被复位为0,即前面保留的数据都会消失,你可以使用一下几种方式解决该问题:

    在数据库中定义一个用于统计网页访问量的数据表count,字段为hitcount,hitcount默认值为0,将统计数据写入到数据表中。
    在每次访问时我们读取表中hitcount字段。
    每次访问时让hitcount自增1。
    在页面上显示新的 hitcount 值作为页面的访问量
    如果你需要统计每个页面的访问量,你可以使用以上逻辑将代码添加到所有页面上。

  • 相关阅读:
    杭电1058
    动态规划之背包模版
    按字典序依次打印只由1~n组成的n位数
    杭电1029
    杭电1257
    杭电2191
    杭电1114
    杭电2602
    南阳975
    杭电2138
  • 原文地址:https://www.cnblogs.com/Alanf/p/10213029.html
Copyright © 2011-2022 走看看