小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

JSP計(jì)數(shù)器源碼

 思奇劍 2006-11-15
JSP計(jì)數(shù)器源碼

計(jì)數(shù)器是一般網(wǎng)站必備的東東,別小看它了,每當(dāng)站長看著小小計(jì)數(shù)器上的數(shù)字飛速增長的時候,感覺實(shí)在是好極了。以前我們用cgi、asp來寫計(jì)數(shù)器,這方面的文章很多了,在這里,我們將會采用目前比較流行的jsp技術(shù)演示如何做一個計(jì)數(shù)器。 6?P~(MPPm  
mVfGL 3P  
  其中我們用到了兩個文件,test.jsp文件用于在瀏覽器中運(yùn)行,counter.java是后臺的一個小java bean程序,用來讀計(jì)數(shù)器的值和寫入計(jì)數(shù)器的值。而對于計(jì)數(shù)器的保存,我們采用了一個文本文件lyfcount.txt。
B2cYy,Whi  
6Nz</bHn  
轉(zhuǎn)自:動態(tài)網(wǎng)制作指南
www. ‘$ 6Zv$S  
mgpeMc5R3  
下面是詳細(xì)的程序代碼(test.jsp放到web目錄下,counter.java放到class目錄):
+33qS}  
//test.jsp文件
@`3-X/Q  
<%@ page contentType="text/html;charset=gb2312"%>
LYL. eK  
<HTML>
 pW0  
<HEAD>
C|F1F &2U  
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
&wk.‘0R9E  
<META NAME="GENERATOR" CONTENT="Oracle JDeveloper">
%K&gZIkX  
<TITLE>
87x7Rnj >=  
計(jì)數(shù)器演示程序
%fU wb  
</TITLE>
"I,z,/5Y  
</HEAD>
lJgBcZ{7  
<BODY>
IrtugFf  
<!--創(chuàng)建并調(diào)用bean(counter)-->
KPX)E!"v  
<jsp:useBean id="counter" class="counter" scope="request">
v2LW[I7]  
</jsp:useBean>
-5~k  
<%
~jKx  
//調(diào)用counter對象的ReadFile方法來讀取文件lyfcount.txt中的計(jì)數(shù)
j(}8B=c{e6  
String cont=counter.ReadFile("/lyfcount.txt");
s Ki/puJ  
//調(diào)用counter對象的ReadFile方法來將計(jì)數(shù)器加一后寫入到文件lyfcount.txt中
b#j^QB9w N  
counter.WriteFile("/lyfcount.txt",cont);%>
W*AWh`yDK  
您是第<font color="red"><%=cont%></font>位訪問者
j {i6 TI  
</BODY>
e$]VJ-*Ni  
</HTML>
,x 61Tj6p  
{enOdTJQx  
//counter.java 讀寫文件的一個bean
}-0Rke6`>Y  
import java.io.*;
pcj}E(\ y  
mc?=kzE  
public class counter extends Object {
NHF1l}*  
private String currentRecord = null;//保存文本的變量
0&dB8+;Ge  
private BufferedReader file; //BufferedReader對象,用于讀取文件數(shù)據(jù)
Pv: H87  
private String path;//文件完整路徑名
 B4&% )2  
public counter() {
] RgX{;  
}
h4Hi&30  
//ReadFile方法用來讀取文件filePath中的數(shù)據(jù),并返回這個數(shù)據(jù)
ZF%0a,&%  
public String ReadFile(String filePath) throws FileNotFoundException
_v(ojt r=  
{
1HPnp /u  
path = filePath;
YicVk\(1  
//創(chuàng)建新的BufferedReader對象
2~ 0K7~  
file = new BufferedReader(new FileReader(path));
ct3vuSf?  
String returnStr =null;
&vt{]z=  
try
<ymk1tk8@  
{
p|~K$ +R  
//讀取一行數(shù)據(jù)并保存到currentRecord變量中
~-g#‘  
currentRecord = file.readLine();
C{s%WW3?  
}
! f/|Lm  
catch (IOException e)
DEC5"S‘f#  
{//錯誤處理
j^ %9ji  
System.out.println("讀取數(shù)據(jù)錯誤.");
uiro2 Fz8  
}
}H&/l?g‘  
if (currentRecord == null)
DgO0/n  
//如果文件為空
Y:d2ra*[&  
returnStr = "沒有任何記錄";
`Au)H  
else
FN@p~ X  
{//文件不為空
="p{vnN"  
returnStr =currentRecord;
]v GW  
}
QDanl36  
//返回讀取文件的數(shù)據(jù)
AR@urdG  
return returnStr;
V0 @M$op  
}
e i&:Z  
//ReadFile方法用來將數(shù)據(jù)counter+1后寫入到文本文件filePath中
c$h=gQ  
//以實(shí)現(xiàn)計(jì)數(shù)增長的功能
~tnQw}x  
public void WriteFile(String filePath,String counter) throws FileNotFoundException
afTiP0 Qz  
{
dnx4bUW0  
path = filePath;
 *% Ga  
//將counter轉(zhuǎn)換為int類型并加一
! Al9>  
int Writestr = Integer.parseInt(counter)+1;
^$%vQ/F,Z  
try {
C{A%JXV|y  
//創(chuàng)建PrintWriter對象,用于寫入數(shù)據(jù)到文件中
oFhww4mY|  
PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
QyjT?K{j:  
//用文本格式打印整數(shù)Writestr
*R\U6A=J8  
pw.println(Writestr);
S$C5 c .  
//清除PrintWriter對象
>|=}0K  
pw.close();
AsBtn-X>^  
} catch(IOException e) {
(1XAc\Le  
//錯誤處理
e_Pdm8Lw)  
System.out.println("寫入文件錯誤"+e.getMessage());
5._Wa[@  
}
25A-F<x  
}
BnUr~  
_f A:ynT]{  
}
#i‘a(chǎn)`8Y6QT  
U_mAGr[  
  到這里,程序?qū)懲炅?,將counter.java編譯為counter.class,同樣放在對應(yīng)的class目錄下,在根目錄下建立一個lyfcount.txt文件,文件內(nèi)容就一個數(shù)字0,直接在瀏覽器中敲入地址就可以看到計(jì)數(shù)器了,刷新瀏覽器會看到不斷變幻的數(shù)字。
mCzk^}5  
@(;G`0C  
  (如果運(yùn)行時候提示找不到文件,請將上面test.jsp中的readfile那一句注釋后運(yùn)行一次則lyfcount.txt文件自動建立,然后就可以正常運(yùn)行。)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多