jsp計數器制作手冊
2020-06-01 23:30:49
供稿:網友
 
計數器是一般網站必備的東東,別小看它了,每當站長看著小小計數器上的數字飛速增長的時候,感覺實在是好極了。以前我們用cgi、asp來寫計數器,這方面的文章很多了,在這里,我們將會采用目前比較流行的jsp技術演示如何做一個計數器。 
  其中我們用到了兩個文件,test.jsp文件用于在瀏覽器中運行,counter.java是后臺的一個小java bean程序,用來讀計數器的值和寫入計數器的值。而對于計數器的保存,我們采用了一個文本文件lyfcount.txt。 
下面是詳細的程序代碼(test.jsp放到web目錄下,counter.java放到class目錄): 
//test.jsp文件 
<%@ page contentType="text/html;charset=gb2312"%> 
<HTML> 
<HEAD> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<META NAME="GENERATOR" CONTENT="Oracle JDeveloper"> 
<TITLE> 
計數器演示程序 
</TITLE> 
</HEAD> 
<BODY> 
<!--創建并調用bean(counter)--> 
<jsp:useBean id="counter" class="counter" scope="request"> 
</jsp:useBean> 
<% 
//調用counter對象的ReadFile方法來讀取文件lyfcount.txt中的計數 
String cont=counter.ReadFile("/lyfcount.txt"); 
//調用counter對象的ReadFile方法來將計數器加一后寫入到文件lyfcount.txt中 
counter.WriteFile("/lyfcount.txt",cont);%> 
您是第<font color="red"><%=cont%></font>位訪問者 
</BODY> 
</HTML> 
//counter.java 讀寫文件的一個bean 
import java.io.*; 
public class counter extends Object { 
private String currentRecord = null;//保存文本的變量 
private BufferedReader file; //BufferedReader對象,用于讀取文件數據 
private String path;//文件完整路徑名 
public counter() { 
} 
//ReadFile方法用來讀取文件filePath中的數據,并返回這個數據 
public String ReadFile(String filePath) throws FileNotFoundException 
{ 
path = filePath; 
//創建新的BufferedReader對象 
file = new BufferedReader(new FileReader(path)); 
String returnStr =null; 
try 
{ 
//讀取一行數據并保存到currentRecord變量中 
currentRecord = file.readLine(); 
} 
catch (IOException e) 
{//錯誤處理 
System.out.println("讀取數據錯誤."); 
} 
if (currentRecord == null) 
//如果文件為空 
returnStr = "沒有任何記錄"; 
else 
{//文件不為空 
returnStr =currentRecord; 
} 
//返回讀取文件的數據 
return returnStr; 
} 
//ReadFile方法用來將數據counter+1后寫入到文本文件filePath中 
//以實現計數增長的功能 
public void WriteFile(String filePath,String counter) throws FileNotFoundException 
{ 
path = filePath; 
//將counter轉換為int類型并加一