1. 程式人生 > >Java Web實現統計網站使用者訪問量並持久化的問題

Java Web實現統計網站使用者訪問量並持久化的問題

Session 是一次會話的區域性儲存,所以我們要使用Application的全域性儲存。

1、可以通過實現ServletContextListener 介面,重寫

contextDestroyed(ServletContextEvent arg0)
contextInitialized(ServletContextEvent arg0)

在初始化的時候進行持久化讀取,銷燬的時候持久化儲存,至於放在檔案還是資料庫則是設計的事情了
coding:

@WebListener
public class CountListener implements ServletContextListener
{
/** * 銷燬 */ @Override public void contextDestroyed(ServletContextEvent sce) { System.out.println("儲存現有的使用者訪問量"); } /** * 建立 */ @Override public void contextInitialized(ServletContextEvent sce) { System.out.println("讀取過去所有的網站訪問量"); } }

2、可以在資料庫中新建一個表儲存和網站訪問量相關的資料,最簡單的就是一個visitcount表中包含一個欄位count,當用戶訪問網站首頁面時候,更新count+1,並且讀取出來放在application中。

request.getServletContext().setAttribute("counter", counter);

然後在頁面中顯示。

資料庫設計的足夠詳細,可以統計網站中不同頁面的訪問量和物理裝置的訪問量。