婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > JSP實現網頁訪問統計

JSP實現網頁訪問統計

熱門標簽:北票市地圖標注 四川保險智能外呼系統商家 高德地圖標注樣式 杭州ai語音電銷機器人功能 地圖標注線上教程 電銷機器人好賣么 電銷機器人是有一些什么技術 商洛電銷 杭州語音電銷機器人軟件

最近學習Jave EE 中的jsp網頁開發,需要實現網頁訪問量的統計,剛開始不知道如何實現,后來問了一下老師,老師是這樣回答我的:要實現網頁訪問的統計,你可以利用application對象來實現,不能用seesion對象,因為session是屬于同一個會話的,關掉瀏覽器數據就沒有了,而application是在同一瀏覽器下的,只要是同一個瀏覽器,將數據保存在applicaiton對象中,這樣就可以保證數據的不變性。其實這些我都懂,我只是不知道如何在jsp用代碼實現。后來我只能上網看看有沒有具體的解決方案,搜了很久,沒有我想要的答案,我想要實現的只是簡單的統計,沒有實現更加復雜的功能。后來還是在CSDN這里找到了答案,在這里簡單總結一下實現網頁訪問統計的幾種方法:

1. 利用application對象進行統計,得到的效果是每進入一次該網頁就統計一次。但效果不怎么好,因為一般統計網頁訪問量,刷新是不算進統計里的,這里就是這種缺點。

具體實現是:

%@ page language="java" import="java.util.*" pageEncoding="GB2312"%> 
html> 
 head> 
 title>java 計數器程序/title> 
 /head> 
 body> 
 % 
 if (application.getAttribute("count") == null) { 
  application.setAttribute("count", new Integer(0)); 
 } 
 Integer count = (Integer) application.getAttribute("count"); 
 application 
   .setAttribute("count", new Integer(count.intValue() + 1)); 
 count = (Integer) application.getAttribute("count"); 
 %> 
  center>這是第%=count.intValue()%>個訪問者/center> 
 /body> 
 /html> 

2.為了解決上面的問題,有了另一種方法,就是同時利用application對象和session對象來統計,這種方法的原理是從打開瀏覽器到關閉瀏覽器算是訪問一次,刷新、返回等操作不算做一次訪問。但還是有缺陷,當jsp服務器從新啟動時,數據也被清零了。

下面還是具體實現:

%@ page language="java" import="java.util.*" pageEncoding="GB2312"%> 
html> 
 head> 
 title>java 計數器程序/title> 
 /head> 
 body> 
 % 
 int n = 0; String counter = (String)application.getAttribute("counter"); 
 if(counter != null){ 
  n = Integer.parseInt(counter); 
 } 
 if(session.isNew()) 
  ++n; 
 %> 
  center>這是第%out.print(n);%>個訪問者/center> 
  % 
  counter = String.valueOf(n); 
  application.setAttribute("counter", counter); 
   %> 
 /body> 
 /html> 

3. 第三種方法是將統計數據存儲在本地的文件當中,比如存儲在一個txt文件當中。

這是為了解決重啟服務器之后數據不用擔心會丟失。
創建一個類:JSPCount

import java.io.BufferedReader; 
import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileReader; 
import java.io.FileWriter; 
import java.io.IOException; 
import java.io.PrintWriter; 
 
 
public class JSPCount { 
 //寫入文件的方法 
 public static void write2File(String filename, long count){ 
  try{ 
   PrintWriter out = new PrintWriter(new FileWriter(filename)); 
   out.println(count); 
   out.close(); 
  } catch (IOException e) { 
   // TODO: handle exception 
   e.printStackTrace(); 
  } 
 } 
  
 //讀文件的方法 
 public static long readFromFile(String filename){ 
  File file = new File(filename); 
  long count = 0; 
  if(!file.exists()){ 
   try { 
    file.createNewFile(); 
   } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
   } 
   write2File(filename, 0); 
  } 
  try{ 
   BufferedReader in = new BufferedReader(new FileReader(file)); 
   try{ 
    count = Long.parseLong(in.readLine()); 
   } 
   catch (NumberFormatException e) { 
    // TODO: handle exception 
    e.printStackTrace(); 
   } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
   } 
  } catch (FileNotFoundException e) { 
   // TODO: handle exception 
   e.printStackTrace(); 
  } 
  return count; 
 } 
} 

 在WebRoot目錄下建jsp文件:count.jsp

%@ page language="java" import="java.util.*" pageEncoding="GB2312"%> 
%@ page import="org.wwj.count.JSPCount" %> 
html> 
 head> 
 title>java 計數器程序/title> 
 /head> 
 body> 
 % 
 JSPCount CountFileHandler = new JSPCount(); 
 //讀取文件 
 long count = CountFileHandler.readFromFile(request.getRealPath("/") + "count.txt"); 
 count = count + 1; //修改記錄 +1 
 out.print(count); //顯示數據 
 //更新文件內容。 
 CountFileHandler.write2File(request.getRealPath("/") + "count.txt", count); 
  
 %> 
 /body> 
 /html> 

程序運行之后會在tomcat下的webapps目錄下的對應的web項目生成一個count.txt文本文件

4.第四種方法,只是保存了訪問的統計數據罷了,但沒有保證刷新頁面的時候不會自增,這樣還是不好。當然總會有解決的辦法的,一般的解決方案就是結合各種方案的優點。下面是由session對象+application對象+txt文本來實現網站的訪問統計。

import java.io.BufferedReader; 
import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileReader; 
import java.io.FileWriter; 
import java.io.IOException; 
import java.io.PrintWriter; 
 
import javax.servlet.http.HttpServlet; 
 
public class Counter extends HttpServlet{ 
 //寫入文件的方法 
 public static void write2File(String filename, long count){ 
  try{ 
   PrintWriter out = new PrintWriter(new FileWriter(filename)); 
   out.println(count); 
   out.close(); 
  } catch (IOException e) { 
   // TODO: handle exception 
   e.printStackTrace(); 
  } 
 } 
  
 //讀文件的方法 
 public static long readFromFile(String filename){ 
  File file = new File(filename); 
  long count = 0; 
  if(!file.exists()){ 
   try { 
    file.createNewFile(); 
   } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
   } 
   write2File(filename, 0); 
  } 
  try{ 
   BufferedReader in = new BufferedReader(new FileReader(file)); 
   try{ 
    count = Long.parseLong(in.readLine()); 
   } 
   catch (NumberFormatException e) { 
    // TODO: handle exception 
    e.printStackTrace(); 
   } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
   } 
  } catch (FileNotFoundException e) { 
   // TODO: handle exception 
   e.printStackTrace(); 
  } 
  return count; 
 } 
} 

jsp文件代碼:

%@page import="org.servlet.count.Counter"%> 
%@ page language="java" import="java.util.*" pageEncoding="GB2312"%> 
html> 
 head> 
  title>java 計數器程序/title> 
 /head> 
 body> 
 % 
 Counter CountFileHandler = new Counter(); 
 long count = 0; 
 if(application.getAttribute("count") == null){ 
  count = CountFileHandler.readFromFile(request.getRealPath("/") + "count.txt"); 
  application.setAttribute("count", new Long(count)); 
 }  
 count = (Long)application.getAttribute("count"); 
 if(session.isNew()){ 
  count++; 
  application.setAttribute("count", count); 
  //更新文件目錄 
  CountFileHandler.write2File(request.getRealPath("/") + "count.txt",count); 
  } 
 %> 
 訪問人數:%=count %> 
  /body> 
/html> 

以上四種方法,是每一次改進才得到的方法,如果要實現網站訪問統計,當然最后一種是最好的,知識不是一步登天,需要在問題上不斷改進,獲得最終的解決方案,當然最后一種不一定是最好的,實現策略上,如果可以利用數據庫也是可以的,但我認為每次訪問網站都要讀和寫數據庫,這樣效率就降低了。

您可能感興趣的文章:
  • jsp利用echarts實現報表統計的實例
  • JS+JSP通過img標簽調用實現靜態頁面訪問次數統計的方法
  • jsp利用application統計在線人數的方法
  • jsp的九大內置對象深入講解
  • springboot整合jsp,實現公交車站路線圖
  • SpringBoot+MybatisPlus+Mysql+JSP實戰
  • 如何將JSP/Servlet項目轉換為Spring Boot項目
  • idea springboot 修改css,jsp不重啟實現頁面更新的問題
  • Springboot集成jsp及部署服務器實現原理
  • 教你怎么用JSP統計網站訪問人數

標簽:貴州 紅河 西藏 云浮 宿州 江西 青島 丹東

巨人網絡通訊聲明:本文標題《JSP實現網頁訪問統計》,本文關鍵詞  JSP,實現,網頁,訪問,統計,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《JSP實現網頁訪問統計》相關的同類信息!
  • 本頁收集關于JSP實現網頁訪問統計的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲天堂免费在线观看视频| 蜜臀av亚洲一区中文字幕| 亚洲综合一区二区三区| 成人激情免费视频| 国产精品美女一区二区在线观看| 国产麻豆精品久久一二三| 久久久.com| 97久久超碰国产精品电影| 一区二区久久久久| 欧美日韩中文另类| 久久精品久久综合| 国产精品久久久久久妇女6080| 成人黄色国产精品网站大全在线免费观看| 欧美国产日产图区| 日本高清免费不卡视频| 偷拍一区二区三区| 久久久国产一区二区三区四区小说| 成人免费毛片片v| 一区二区三区在线观看视频| 日韩欧美一级二级三级| 99久久精品费精品国产一区二区| 午夜视频在线观看一区| 亚洲精品一区二区三区香蕉| 成人激情小说网站| 日韩av一二三| 亚洲精品老司机| 亚洲精品一区二区三区福利| aaa国产一区| 久久精品国产亚洲高清剧情介绍 | 成人精品视频.| 午夜欧美2019年伦理| 国产三级一区二区| 欧美日韩国产大片| 国产不卡视频在线观看| 日韩精品视频网站| 亚洲人成影院在线观看| 精品国产乱码91久久久久久网站| 91九色最新地址| 国产精品综合二区| 青娱乐精品在线视频| 一区二区三区欧美在线观看| 国产精品久久一级| 久久综合网色—综合色88| 欧美日韩在线播放一区| 91在线高清观看| 国产成人精品亚洲午夜麻豆| 久草在线在线精品观看| 免费在线观看成人| 亚洲国产成人porn| 亚洲精品乱码久久久久| 亚洲欧洲成人精品av97| 国产欧美精品区一区二区三区| 91精品免费在线| 欧美日韩大陆一区二区| 欧洲视频一区二区| 欧美主播一区二区三区| 91影院在线免费观看| 91一区二区三区在线观看| 99精品国产99久久久久久白柏| 高潮精品一区videoshd| 国产91色综合久久免费分享| 国产成人综合自拍| 国产精品亚洲一区二区三区在线| 精品影视av免费| 九一九一国产精品| 精一区二区三区| 国产在线看一区| 国产福利视频一区二区三区| 国产成人在线观看免费网站| 国产夫妻精品视频| 成人永久aaa| 色综合久久久久综合99| 91视频com| 8x8x8国产精品| 欧美不卡一区二区| 国产欧美一区视频| 亚洲人成在线观看一区二区| 午夜欧美视频在线观看| 日韩电影在线观看电影| 经典一区二区三区| 成人精品视频一区二区三区尤物| 99精品国产91久久久久久| 欧美性做爰猛烈叫床潮| 欧美tickling网站挠脚心| 中文字幕欧美区| 亚洲精品国产a久久久久久| 天天免费综合色| 国产综合成人久久大片91| 国产成人日日夜夜| 色狠狠av一区二区三区| 51午夜精品国产| 国产欧美日本一区视频| 亚洲国产欧美日韩另类综合| 黄色日韩三级电影| 色猫猫国产区一区二在线视频| 91精品在线麻豆| 国产精品乱码久久久久久| 亚洲444eee在线观看| 丁香网亚洲国际| 7777精品伊人久久久大香线蕉 | 亚洲精品一二三四区| 久久精品国产免费| 欧美主播一区二区三区| 久久久国产精品麻豆| 亚洲h精品动漫在线观看| 成人午夜在线免费| 日韩精品一区二区三区swag| 亚洲色图20p| 国产一区二区三区不卡在线观看| 色婷婷久久久综合中文字幕| 久久伊人中文字幕| 蜜芽一区二区三区| 欧美探花视频资源| 亚洲精品伦理在线| www.av亚洲| 久久久久久久免费视频了| 亚洲综合一区二区| 日日嗨av一区二区三区四区| 在线免费一区三区| 久久色在线观看| 亚洲 欧美综合在线网络| 成人精品视频一区| 久久先锋资源网| 蜜桃传媒麻豆第一区在线观看| 欧美一区二区三区播放老司机| 久久精品视频在线看| 激情综合网激情| 欧美日韩国产首页| 亚洲一二三四久久| 色吧成人激情小说| 亚洲视频图片小说| 91在线视频在线| 国产精品毛片久久久久久久| 国产91精品一区二区| 成人午夜又粗又硬又大| 波多野结衣中文字幕一区| 337p亚洲精品色噜噜| 亚洲中国最大av网站| 成人黄色免费短视频| 国产精品欧美久久久久无广告| 午夜精品免费在线| 欧美日韩夫妻久久| 亚洲第一搞黄网站| 欧美久久一区二区| 亚洲一区二区在线观看视频| 一本在线高清不卡dvd| 国产网站一区二区| 国产精一品亚洲二区在线视频| 日本一区二区三级电影在线观看 | 国模套图日韩精品一区二区| 久久综合99re88久久爱| 天天色天天爱天天射综合| 欧美另类z0zxhd电影| 日产国产欧美视频一区精品| 日韩一区二区视频| 精品午夜久久福利影院| 久久精品人人爽人人爽| 成人在线视频一区二区| 亚洲欧美日韩电影| 这里只有精品99re| 国产一区二区在线电影| 亚洲日本韩国一区| 日韩一区二区三区免费观看| 不卡免费追剧大全电视剧网站| 有码一区二区三区| 精品国产91乱码一区二区三区| av色综合久久天堂av综合| 天天综合网 天天综合色| 久久影音资源网| 欧美色手机在线观看| 午夜精品久久久久久久| 日韩伦理电影网| 免费观看一级欧美片| 久久综合色之久久综合| 99精品偷自拍| 精品影院一区二区久久久| 一区二区三区中文字幕在线观看| 日韩精品最新网址| 色美美综合视频| 国产盗摄女厕一区二区三区| 亚洲成人自拍一区| 欧美经典一区二区三区| 欧美日韩视频在线观看一区二区三区 | 国内外成人在线| 亚洲自拍偷拍麻豆| 综合久久综合久久| 日韩天堂在线观看| 欧美性生活一区| 美国av一区二区| 国产精品灌醉下药二区| 日韩一区二区免费在线电影| 色天天综合久久久久综合片| 国产999精品久久久久久绿帽| 日本欧美一区二区三区乱码| 一卡二卡欧美日韩| 国产精品无遮挡| 久久婷婷色综合| 日韩一区二区麻豆国产| 欧美日韩情趣电影| 欧美三级韩国三级日本一级|