JSPカウンタープロダクション
著者:Eve Cole
更新時間:2009-07-02 17:12:55
カウンターは一般的な Web サイトにとって必須です。Web マスターは、小さなカウンターの数字が急速に増加するのを見るたびに、とても気分が良くなります。以前は、cgi と asp を使用してカウンターを作成していました。この分野には多くの記事があります。ここでは、現在普及している jsp テクノロジーを使用してカウンターを作成する方法を説明します。
2 つのファイルを使用しました。test.jsp ファイルはブラウザで実行するために使用され、counter.java はバックグラウンドでカウンタ値の読み取りとカウンタ値の書き込みに使用される小さな Java Bean プログラムです。カウンターを保存するには、テキスト ファイル lyfcount.txt を使用します。
詳細なプログラム コードは次のとおりです (test.jsp は web ディレクトリに配置され、counter.java は class ディレクトリに配置されます)。
//test.jsp ファイル
<%@ page contentType="text/html;charset=gb2312"%>
<HTML>
<頭>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>カウンター デモンストレーション プログラム</TITLE>
</HEAD>
<本体>
<!--Bean(カウンター) を作成して呼び出す-->
<jsp:useBean id="counter" class="counter"scope="request">
</jsp:useBean>
<%
//カウンター オブジェクトの ReadFile メソッドを呼び出して、ファイル lyfcount.txt 内のカウントを読み取ります。
文字列 cont=counter.ReadFile("/lyfcount.txt");
//カウンター オブジェクトの ReadFile メソッドを呼び出してカウンターをインクリメントし、ファイル lyfcount.txt に書き込みます。
counter.WriteFile("/lyfcount.txt",cont);%>
あなたは<font color="red"><%=cont%></font>の訪問者です
</BODY>
</HTML>
//counter.java はファイルの読み取りと書き込みを行う Bean です
java.io.* をインポートします。
パブリック クラス カウンタ extends Object {
private String currentRecord = null;//テキストを保存する変数
private BufferedReader ファイル; // ファイル データの読み取りに使用される BufferedReader オブジェクト
private String path;//ファイルのフルパス名
パブリックカウンター() {
}
//ReadFile メソッドは、ファイル filePath 内のデータを読み取り、このデータを返すために使用されます。
public String ReadFile(String filePath) は FileNotFoundException をスローします
{
パス = ファイルパス;
// 新しい BufferedReader オブジェクトを作成する
ファイル = 新しい BufferedReader(新しい FileReader(パス));
文字列 returnStr =null;
試す
{
// データ行を読み取り、currentRecord 変数に保存します。
currentRecord = file.readLine();
}
catch (IOException e)
{//エラー処理
System.out.println("データの読み取りエラー。");
}
if (currentRecord == null)
//ファイルが空の場合
returnStr = "レコードがありません";
それ以外
{//ファイルは空ではありません
returnStr =現在のレコード;
}
// 読み込んだファイルからデータを返す
戻り値の文字列を返します。
}
//ReadFile メソッドを使用して、データ カウンタ +1 をテキスト ファイル filePath に書き込みます。
// 成長をカウントする機能を実現するため
public void WriteFile(String filePath,String counter) がスローされます
ファイルが見つかりません例外
{
パス = ファイルパス;
//カウンターをint型に変換して1を追加します
int Writestr = Integer.parseInt(counter)+1;
試す {
// ファイルにデータを書き込むための PrintWriter オブジェクトを作成します
PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
//整数 Writestr をテキスト形式で出力します
pw.println(Writestr);
//PrintWriter オブジェクトをクリアします
pw.close();
catch(IOException e) {
//エラー処理
System.out.println("ファイル書き込みエラー"+e.getMessage());
}
}
}
この時点でプログラムは完了し、counter.java を counter.class にコンパイルし、対応するクラスにも配置します。
クラス ディレクトリのルート ディレクトリに lyfcount.txt ファイルを作成します。ファイルの内容は数値 0 です。
ブラウザにアドレスを入力するとカウンターが表示され、ブラウザを更新すると数値の変化が表示されます。
(実行時にファイルが見つからない旨のメッセージが表示される場合は、上記test.jspのreadfile文をコメント化して実行してください。
lyfcount.txt ファイルが自動的に作成されると、通常どおり実行できます。 )