Java 和 JSP 实现网站访问量统计 (刷新过滤)

java 和 JSP 实现的统计网站访问量,不需要数据库,将数据存储在 指定位置的 txt 文件中,代码块分为两部分

首先, java 部分:

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;

public class VisitorCounter {
     //使用Properties
     private static Properties p=new Properties();
     
     public static void writeCount(String path,String count){  
         p.setProperty("count", count);
         try {
             p.store(new FileOutputStream(path), "");  //写入文件
         } catch (FileNotFoundException e) {
             e.printStackTrace();
         } catch (IOException e) {
             e.printStackTrace();
         }
     } 
     
     public static String readCount(String path) {
         String count="1";
         File f = new File(path);
         if (!f.exists()) {
             writeCount(path, "1");
         }
         try {
             p.load(new FileInputStream(path));
             count = p.getProperty("count");
         } catch (FileNotFoundException e) {
             e.printStackTrace();
         } catch (IOException e) {
             e.printStackTrace();
         }
         return count;
    }
}

再者, JSP 页面部分:

<%@ page import="com.gzewell.ucomweb.util.VisitorCounter"%>
<%
    //訪問量
    String count = VisitorCounter.readCount("D:/visitCount.txt");
    if (session.getAttribute("visit") == null) {
        session.setAttribute("visit", "y");//将未访问设置为访问
        session.setMaxInactiveInterval(60 * 60 * 24);//设置最大时效    单位是秒
    
        int count1 = Integer.parseInt(count);
        count1 = count1 + 1;
        count = String.valueOf(count1).toString();
        VisitorCounter.writeCount("D:/visitCount.txt", count);
    }
%>

在下将数据存储在 D 盘目录的 visitCount.txt 文件中,若不存在该文件会自行创建。

PS: 不可将该文件删除,否则数据将从 0 开始重新记录

原文地址:https://www.cnblogs.com/linnuo/p/6812115.html