JSP筆記-點選量統計

大雄45發表於2021-08-04
導讀 JSP(全稱JavaServer Pages)是由Sun Microsystems公司主導建立的一種動態網頁技術標準。JSP部署於網路伺服器上,可以響應客戶端傳送的請求,並根據請求內容動態地生成HTML、XML或其他格式文件的Web網頁,然後返回給請求者。JSP技術以Java語言作為 語言,為使用者的HTTP請求提供服務,並能與伺服器上的其它Java程式共同處理複雜的業務需求。

JSP筆記-點選量統計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檔案上,並訪問檔案。你會看到頁面會生成個計數器,在我們每次重新整理頁面時,計數器都會發生變化(每次重新整理增加1)。3

復位計數器

使用以上方法,在 web 伺服器重啟後,計數器會被複位為 0,即前面保留的資料都會消失,你可以使用以下幾種方式解決該問題:

1.在資料庫中定義一個用於統計網頁訪問量的資料表 count,欄位為 hitcount,hitcount 預設值為0,將統計資料寫入到資料表中。

2.在每次訪問時我們讀取表中 hitcount 欄位。

3.每次訪問時讓 hitcount 自增 1。

4.在頁面上顯示新的 hitcount 值作為頁面的訪問量。

5.如果你需要統計每個頁面的訪問量,你可以使用以上邏輯將程式碼新增到所有頁面上。

原文來自:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2785299/,如需轉載,請註明出處,否則將追究法律責任。

相關文章