想做一个关于网页点击统计量的程序。就是当点击一下网页的时候就统计一下。不用js,用jsp和java怎么实现。最好给个列子。

解决方案 »

  1.   

    到数据专家http://www.cnzz.com/,注册一个账号,然后把里面的代码增加到你的网站页面。就可以你统计点击量。
      

  2.   

    简单的网页计数器:
    <%!
    int number = 0;
    synchronized void addNumber(){
    number++;
    }
    %>
    <%
    this.addNumber();
    %>
    本网页的访问次数是:<%=number %>次
      

  3.   

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@ page import="java.io.*" %>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>网站访问计数器</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">    
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
      </head>
      
      <body bgcolor=white><font size=4>
        <%! int number=0; 
         File file=new File("count.txt");
         synchronized void countPeople(){//计算访问人数的方法
         if(!file.exists()){ 
         number++; 
         try{
         file.createNewFile();
         FileOutputStream out=new FileOutputStream("count.txt");
         DataOutputStream dataOut=new DataOutputStream(out);
         dataOut.writeInt(number);
         out.close();
         dataOut.close();
         }
         catch(IOException ee){}
         }
         else{
         try{
         FileInputStream in=new FileInputStream("count.txt");
         DataInputStream dataIn=new DataInputStream(in);
         number=dataIn.readInt();
         number++;
         in.close();
         dataIn.close();
         FileOutputStream out=new FileOutputStream("count.txt");
         DataOutputStream dataOut=new DataOutputStream(out);
         dataOut.writeInt(number);
         out.close();
         dataOut.close();
         }
         catch(IOException ee){}
        
         }
         } 
         %>
         <%
          countPeople();
         
          %>
          <p>您是第<%=number %>个访问本站的客户</p>
          </font>
      </body>
    </html>
    你可以试试JSP页面写的
      

  4.   


    number变量声明的时候是static才行,不然另一个用户进来又重新开始计数了
      

  5.   

    我觉得用application就可以了,再配合一些逻辑计算,很简单,一点都不复杂,不需要那么都的代码!
      

  6.   

    用 application 就可以的啊。
      

  7.   

    示例 application???、? 
      

  8.   

    最好是把访问IP存到数据库里,防止用户过量刷新,一个IP地址一天访问只按一次算
      

  9.   

    在数据库里建表,对表进行操作,又或者用Application进行操作
      

  10.   

    我觉得用servletContext可以,在网站的服务器重启之前把SESSION里面统计的number存到数据库
      

  11.   

    session解决不了的,重启一下应用不就完了.就算不重启,多台服务器怎么办?session延迟怎么办?
    建议建表,根据ip来统计比较准确.