jsp計(jì)數(shù)器制作手冊(cè)
更新時(shí)間:2006年10月13日 00:00:00 作者:
計(jì)數(shù)器是一般網(wǎng)站必備的東東,別小看它了,每當(dāng)站長(zhǎng)看著小小計(jì)數(shù)器上的數(shù)字飛速增長(zhǎng)的時(shí)候,感覺實(shí)在是好極了。以前我們用cgi、asp來寫計(jì)數(shù)器,這方面的文章很多了,在這里,我們將會(huì)采用目前比較流行的jsp技術(shù)演示如何做一個(gè)計(jì)數(shù)器。
其中我們用到了兩個(gè)文件,test.jsp文件用于在瀏覽器中運(yùn)行,counter.java是后臺(tái)的一個(gè)小java bean程序,用來讀計(jì)數(shù)器的值和寫入計(jì)數(shù)器的值。而對(duì)于計(jì)數(shù)器的保存,我們采用了一個(gè)文本文件lyfcount.txt。
下面是詳細(xì)的程序代碼(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>
計(jì)數(shù)器演示程序
</TITLE>
</HEAD>
<BODY>
<!--創(chuàng)建并調(diào)用bean(counter)-->
<jsp:useBean id="counter" class="counter" scope="request">
</jsp:useBean>
<%
//調(diào)用counter對(duì)象的ReadFile方法來讀取文件lyfcount.txt中的計(jì)數(shù)
String cont=counter.ReadFile("/lyfcount.txt");
//調(diào)用counter對(duì)象的ReadFile方法來將計(jì)數(shù)器加一后寫入到文件lyfcount.txt中
counter.WriteFile("/lyfcount.txt",cont);%>
您是第<font color="red"><%=cont%></font>位訪問者
</BODY>
</HTML>
//counter.java 讀寫文件的一個(gè)bean
import java.io.*;
public class counter extends Object {
private String currentRecord = null;//保存文本的變量
private BufferedReader file; //BufferedReader對(duì)象,用于讀取文件數(shù)據(jù)
private String path;//文件完整路徑名
public counter() {
}
//ReadFile方法用來讀取文件filePath中的數(shù)據(jù),并返回這個(gè)數(shù)據(jù)
public String ReadFile(String filePath) throws FileNotFoundException
{
path = filePath;
//創(chuàng)建新的BufferedReader對(duì)象
file = new BufferedReader(new FileReader(path));
String returnStr =null;
try
{
//讀取一行數(shù)據(jù)并保存到currentRecord變量中
currentRecord = file.readLine();
}
catch (IOException e)
{//錯(cuò)誤處理
System.out.println("讀取數(shù)據(jù)錯(cuò)誤.");
}
if (currentRecord == null)
//如果文件為空
returnStr = "沒有任何記錄";
else
{//文件不為空
returnStr =currentRecord;
}
//返回讀取文件的數(shù)據(jù)
return returnStr;
}
//ReadFile方法用來將數(shù)據(jù)counter+1后寫入到文本文件filePath中
//以實(shí)現(xiàn)計(jì)數(shù)增長(zhǎng)的功能
public void WriteFile(String filePath,String counter) throws FileNotFoundException
{
path = filePath;
//將counter轉(zhuǎn)換為int類型并加一
int Writestr = Integer.parseInt(counter)+1;
try {
//創(chuàng)建PrintWriter對(duì)象,用于寫入數(shù)據(jù)到文件中
PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
//用文本格式打印整數(shù)Writestr
pw.println(Writestr);
//清除PrintWriter對(duì)象
pw.close();
} catch(IOException e) {
//錯(cuò)誤處理
System.out.println("寫入文件錯(cuò)誤"+e.getMessage());
}
}
}
到這里,程序?qū)懲炅?,將counter.java編譯為counter.class,同樣放在對(duì)應(yīng)的class目錄下,在根目錄下建立一個(gè)lyfcount.txt文件,文件內(nèi)容就一個(gè)數(shù)字0,直接在瀏覽器中敲入地址就可以看到計(jì)數(shù)器了,刷新瀏覽器會(huì)看到不斷變幻的數(shù)字。
(如果運(yùn)行時(shí)候提示找不到文件,請(qǐng)將上面test.jsp中的readfile那一句注釋后運(yùn)行一次則lyfcount.txt文件自動(dòng)建立,然后就可以正常運(yùn)行。)
其中我們用到了兩個(gè)文件,test.jsp文件用于在瀏覽器中運(yùn)行,counter.java是后臺(tái)的一個(gè)小java bean程序,用來讀計(jì)數(shù)器的值和寫入計(jì)數(shù)器的值。而對(duì)于計(jì)數(shù)器的保存,我們采用了一個(gè)文本文件lyfcount.txt。
下面是詳細(xì)的程序代碼(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>
計(jì)數(shù)器演示程序
</TITLE>
</HEAD>
<BODY>
<!--創(chuàng)建并調(diào)用bean(counter)-->
<jsp:useBean id="counter" class="counter" scope="request">
</jsp:useBean>
<%
//調(diào)用counter對(duì)象的ReadFile方法來讀取文件lyfcount.txt中的計(jì)數(shù)
String cont=counter.ReadFile("/lyfcount.txt");
//調(diào)用counter對(duì)象的ReadFile方法來將計(jì)數(shù)器加一后寫入到文件lyfcount.txt中
counter.WriteFile("/lyfcount.txt",cont);%>
您是第<font color="red"><%=cont%></font>位訪問者
</BODY>
</HTML>
//counter.java 讀寫文件的一個(gè)bean
import java.io.*;
public class counter extends Object {
private String currentRecord = null;//保存文本的變量
private BufferedReader file; //BufferedReader對(duì)象,用于讀取文件數(shù)據(jù)
private String path;//文件完整路徑名
public counter() {
}
//ReadFile方法用來讀取文件filePath中的數(shù)據(jù),并返回這個(gè)數(shù)據(jù)
public String ReadFile(String filePath) throws FileNotFoundException
{
path = filePath;
//創(chuàng)建新的BufferedReader對(duì)象
file = new BufferedReader(new FileReader(path));
String returnStr =null;
try
{
//讀取一行數(shù)據(jù)并保存到currentRecord變量中
currentRecord = file.readLine();
}
catch (IOException e)
{//錯(cuò)誤處理
System.out.println("讀取數(shù)據(jù)錯(cuò)誤.");
}
if (currentRecord == null)
//如果文件為空
returnStr = "沒有任何記錄";
else
{//文件不為空
returnStr =currentRecord;
}
//返回讀取文件的數(shù)據(jù)
return returnStr;
}
//ReadFile方法用來將數(shù)據(jù)counter+1后寫入到文本文件filePath中
//以實(shí)現(xiàn)計(jì)數(shù)增長(zhǎng)的功能
public void WriteFile(String filePath,String counter) throws FileNotFoundException
{
path = filePath;
//將counter轉(zhuǎn)換為int類型并加一
int Writestr = Integer.parseInt(counter)+1;
try {
//創(chuàng)建PrintWriter對(duì)象,用于寫入數(shù)據(jù)到文件中
PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
//用文本格式打印整數(shù)Writestr
pw.println(Writestr);
//清除PrintWriter對(duì)象
pw.close();
} catch(IOException e) {
//錯(cuò)誤處理
System.out.println("寫入文件錯(cuò)誤"+e.getMessage());
}
}
}
到這里,程序?qū)懲炅?,將counter.java編譯為counter.class,同樣放在對(duì)應(yīng)的class目錄下,在根目錄下建立一個(gè)lyfcount.txt文件,文件內(nèi)容就一個(gè)數(shù)字0,直接在瀏覽器中敲入地址就可以看到計(jì)數(shù)器了,刷新瀏覽器會(huì)看到不斷變幻的數(shù)字。
(如果運(yùn)行時(shí)候提示找不到文件,請(qǐng)將上面test.jsp中的readfile那一句注釋后運(yùn)行一次則lyfcount.txt文件自動(dòng)建立,然后就可以正常運(yùn)行。)
您可能感興趣的文章:
- 使用JavaScript制作一個(gè)簡(jiǎn)單的計(jì)數(shù)器的方法
- jsp網(wǎng)頁(yè)計(jì)數(shù)器實(shí)現(xiàn)示例
- 一個(gè)簡(jiǎn)單的網(wǎng)站訪問JS計(jì)數(shù)器 刷新1次加1次訪問
- javascript下計(jì)數(shù)器每秒自動(dòng)加1
- 用JAVASCRIPT幫我寫個(gè)計(jì)數(shù)器
- js計(jì)數(shù)器代碼
- jsp計(jì)數(shù)器制作
- jsp計(jì)數(shù)器代碼
- 一個(gè)可以防止刷新的JSP計(jì)數(shù)器
- JavaScript實(shí)現(xiàn)計(jì)數(shù)器基礎(chǔ)方法
相關(guān)文章
JSP頁(yè)面實(shí)現(xiàn)驗(yàn)證碼校驗(yàn)功能
在網(wǎng)頁(yè)頁(yè)面的使用中為防止“非人類”的大量操作和防止一些的信息冗余,增加驗(yàn)證碼校驗(yàn)是許多網(wǎng)站常用的方式,這篇文章主要介紹了JSP頁(yè)面實(shí)現(xiàn)驗(yàn)證碼校驗(yàn),需要的朋友可以參考下2022-10-10tomcat6下jsp出現(xiàn)getOutputStream() has already been called for t
這篇文章主要介紹tomcat6下jsp出現(xiàn)getOutputStream() has already been called for this response異常的原因和解決方法,需要的朋友可以參考下。2016-06-06JSP中動(dòng)態(tài)合并單元格的實(shí)例代碼
本文通過實(shí)例代碼給大家詳細(xì)介紹了jsp動(dòng)態(tài)合并單元格的方法,代碼簡(jiǎn)單易懂,非常不錯(cuò),需要的朋友參考下吧2016-12-12jsp使用ECharts動(dòng)態(tài)在地圖上標(biāo)識(shí)點(diǎn)
echarts地圖展示功能很強(qiáng)大,官網(wǎng)上靜態(tài)展示的例子很多了,動(dòng)態(tài)的資料少,需要參考本文的可以進(jìn)來了解一下。2016-10-10JSP 開發(fā)之Spring BeanUtils組件使用
這篇文章主要介紹了JSP 開發(fā)之Spring BeanUtils組件使用的相關(guān)資料,這里提供實(shí)例幫助大家理解如何使用Spring BeanUtils組件,需要的朋友可以參考下2017-08-08基于JSP的RSS閱讀器的設(shè)計(jì)與實(shí)現(xiàn)方法(推薦)
下面小編就為大家?guī)硪黄贘SP的RSS閱讀器的設(shè)計(jì)與實(shí)現(xiàn)方法(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-07-07一個(gè)通用的jsp分頁(yè)P(yáng)ageBean
totalRecords 總記錄數(shù) list 保存分頁(yè)的數(shù)據(jù) pageNo 當(dāng)前頁(yè) pageSize 頁(yè)大小 query 保存用戶查詢的字符串 pageAction 操作分頁(yè)的Servlet或Action(struts)2008-10-10