利用 Cookie 判斷是否首次訪問,僅首次遞增計數文件,刷新不重複計數,解決傳統計數器刷新即增的問題。
<%@ page contentType="text/html;charset=gb2312" import="java.io.*" %>
<html><body>
<%
String file = "count.txt";
BufferedReader reader = new BufferedReader(new FileReader(file));
String line = reader.readLine();
reader.close();
int count = (line == null) ? 0 : Integer.parseInt(line);
String cookie = request.getHeader("Cookie");
if (cookie == null) { // 首次訪問
count++;
PrintWriter pw = new PrintWriter(new FileWriter(file));
pw.println(count);
pw.close();
}
%>
<p align="center">您是第 <b><font color="red"><%=count%></font></b> 位訪客。</p>
</body></html>
request.getHeader("Cookie"):無 Cookie 視為新訪客