
- JSP 基礎教程
- JSP - 首頁
- JSP - 概述
- JSP - 環境設定
- JSP - 架構
- JSP - 生命週期
- JSP - 語法
- JSP - 指令
- JSP - 動作
- JSP - 隱式物件
- JSP - 客戶端請求
- JSP - 伺服器響應
- JSP - HTTP 狀態碼
- JSP - 表單處理
- JSP - 編寫過濾器
- JSP - 處理 Cookie
- JSP - 會話跟蹤
- JSP - 檔案上傳
- JSP - 處理日期
- JSP - 頁面重定向
- JSP - 訪問計數器
- JSP - 自動重新整理
- JSP - 傳送電子郵件
- 高階 JSP 教程
- JSP - 標準標籤庫
- JSP - 資料庫訪問
- JSP - XML 資料
- JSP - JavaBean
- JSP - 自定義標籤
- JSP - 表示式語言
- JSP - 異常處理
- JSP - 除錯
- JSP - 安全性
- JSP - 國際化
- JSP 有用資源
- JSP - 問答
- JSP - 快速指南
- JSP - 有用資源
- JSP - 討論
JSP - 訪問計數器
在本章中,我們將討論 JSP 中的訪問計數器。訪問計數器會告訴您網站特定頁面被訪問的次數。通常,您會將訪問計數器附加到您的 index.jsp 頁面,假設人們首先訪問您的主頁。
要實現訪問計數器,您可以使用 Application 隱式物件以及關聯的方法 getAttribute() 和 setAttribute()。
此物件在 JSP 頁面的整個生命週期中表示 JSP 頁面本身。此物件在 JSP 頁面初始化時建立,並在 JSP 頁面被 jspDestroy() 方法移除時銷燬。
以下是設定應用程式級別變數的語法:
application.setAttribute(String Key, Object Value);
您可以使用上述方法設定訪問計數器變數並重置同一個變數。以下是讀取先前方法設定的變數的方法:
application.getAttribute(String Key);
每次使用者訪問您的頁面時,您可以讀取訪問計數器的當前值,將其加 1,然後再次將其設定為供將來使用。
示例
此示例演示瞭如何使用 JSP 統計特定頁面的總訪問次數。如果要統計網站的總訪問次數,則必須在所有 JSP 頁面中包含相同的程式碼。
<%@ page import = "java.io.*,java.util.*" %> <html> <head> <title>Application object in JSP</title> </head> <body> <% Integer hitsCount = (Integer)application.getAttribute("hitCounter"); if( hitsCount ==null || hitsCount == 0 ) { /* First visit */ out.println("Welcome to my website!"); hitsCount = 1; } else { /* return visit */ out.println("Welcome back to my website!"); hitsCount += 1; } application.setAttribute("hitCounter", hitsCount); %> <center> <p>Total number of visits: <%= hitsCount%></p> </center> </body> </html>
現在讓我們將上述程式碼放在 main.jsp 中,並使用 URL https://:8080/main.jsp 呼叫此 JSP。這將顯示訪問計數器的值,該值在您重新整理頁面時會增加。您可以嘗試使用不同的瀏覽器訪問該頁面,您會發現訪問計數器每次訪問都會增加,您將收到如下結果:
Welcome back to my website!
Total number of visits: 12
訪問計數器重置
當您重新啟動應用程式(即 Web 伺服器)時會發生什麼?這將重置您的應用程式變數,並且您的計數器將重置為零。為了避免這種丟失,請考慮以下幾點:
定義一個包含單個計數的資料庫表,例如 hitcount。為其分配零值。
每次訪問時,讀取表以獲取 hitcount 的值。
將 hitcount 的值加 1,並使用新值更新表。
顯示 hitcount 的新值作為總頁面訪問次數。
如果要統計所有頁面的訪問次數,請為所有頁面實現上述邏輯。