詳細なJSPのコース:アリクラウド大学-開発者教室
時々、私たちは、ページがアクセスされた回数を知っている必要があり、我々は、ページの訪問ユーザーが最初にロードの一般的な累積数にページアクセス統計をページ内のページ数を追加する必要があります。
カウンタを実現するには、アプリケーションの暗黙オブジェクトと関連した方法を使用することができますのgetAttribute()とのsetAttribute()を達成します。
このオブジェクトは表しJSP ライフサイクル全体のページを。ときにJSPは、このオブジェクトのページを作成する際に初期化されたJSP ページを呼び出すjspDestroyを()オブジェクトを削除します。
以下の変数は、アプリケーションの構文で作成されます。
application.setAttribute(String Key, Object Value);
あなたは、カウンタ変数を設定し、上記の方法を使用して変数の値を更新することができます。次のように変数が読み込まれます。
application.getAttribute(String Key);
各ページにアクセスすると、あなたはカウンタの現在の値を読み込み、インクリメントすることができる1を、再度設定し、新しい値は、ページ上で、次回ユーザーが訪問を表示します。
プレゼンテーションの例
この例では、使用する方法を示しJSPを特定のページを訪問した人の合計数を計算します。あなたがページを使用してサイトへの総トラフィックを計算したい場合は、内のコードのすべてを持っているのJSP ページ。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%><%@ page import="java.io.*,java.util.*" %><html><html><head><title>访问量统计</title></head><body><%
Integer hitsCount =
(Integer)application.getAttribute("hitCounter");
if( hitsCount ==null || hitsCount == 0 ){
/* 第一次访问 */
out.println("欢迎访问阿里云大学!");
hitsCount = 1;
}else{
/* 返回访问值 */
out.println("欢迎再次访问阿里云大学!");
hitsCount += 1;
}
application.setAttribute("hitCounter", hitsCount);%><p>页面访问量为: <%= hitsCount%></p></body></html>
今、私たちは、上記のコードを配置しますmain.jsp ファイルに、そして訪問にhttp:// localhost:8080 / testjsp / main.jspのファイルを。あなたは、ページが、我々はページカウンタを更新するたびに(各リフレッシュ増加変更されるカウンタを生成します表示されます1 )。
カウンタをリセット
上記の方法を使用して、ウェブサーバーの再起動、カウンタがリセットされ0 、それは以前のデータを保持するために、ある消えてしまいます、あなたはこの問題を解決するために、いくつかの方法を使用することができます:
- データベーステーブル内の統計トラフィックデータ用のWebページを定義するCOUNT 、フィールドHitCountの各、HitCountの各のデフォルト値は0 、統計データは、データテーブルに書き込まれています。
- あなたが私たちのテーブルにアクセスすると読み込まれるHitCountの各フィールドを。
- するごとに確認してみましょうHITCOUNT 増分1 。
- ページに表示される新しいHitCountの各のページの訪問としての価値。
- 各ページへの訪問数が必要な場合は、すべてのページにコードを追加するには、上記のロジックを使用することができます。
詳細なJSPのコース:アリクラウド大学-開発者教室