JS+JSP通过img标签调用实现静态页面访问次数统计的方法


Posted in Javascript onDecember 14, 2015

本文实例讲述了JS+JSP通过img标签调用实现静态页面访问次数统计的方法。分享给大家供大家参考,具体如下:

测试页面: test.html  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>test</title>
  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="expires" content="0">
  <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
  <meta http-equiv="description" content="This is my page">
  <!--
  <link rel="stylesheet" type="text/css" href="styles.css">
  -->
 </head>
 <body>
 this is a test page.
<script type="text/javascript">document.write("<img src=http://127.0.0.1:8080/EasyCMS/pv.jsp border=0 width=0 height=0>");</script>
 </body>
</html>

统计程序: pv.jsp:

假设部署位置为http://127.0.0.1:8080/EasyCMS/pv.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="java.io.*"%>
<%
String path="/opt/test.txt";
writeNumber(String.valueOf(readNumber(path)+1),path);
%>
<%=readNumber(path) %>
<%!
  /**
   * 写入数字内容
   *
   * @param number
   * @param filename
   * @return
   */
  public boolean writeNumber(String number, String filename) {
    try {
      FileOutputStream fos = new FileOutputStream(filename);
      OutputStreamWriter writer = new OutputStreamWriter(fos);
      writer.write(number);
      writer.close();
      fos.close();
    } catch (IOException e) {
      e.printStackTrace();
      return false;
    }
    return true;
  }
  /**
   * 读取数字内容
   * 
   * @param filename
   * @return
   */
  public int readNumber(String filename) {
    int number = 0;
    try {
      File file = new File(filename);
      if (file.exists()) {
        FileReader fr = new FileReader(file);
        BufferedReader br = new BufferedReader(fr);
        String contents = br.readLine();
        if (contents != null && contents.length() > 0) {
          contents = contents.replaceAll("[^0-9]", "");
          number = Integer.valueOf(contents);
        }
        br.close();
        fr.close();
      }
    } catch (IOException e) {
      e.printStackTrace();
    }
    return number;
  }
%>

基本思想:
 
访问静态页面时,通过img标签指定src 为访问统计的地址, img标签向统计程序发出请求,实现统计.
统计示例代码采用文件来记录访问次数,实际项目可以记录数据库.
 
关键代码:

<script type="text/javascript">document.write("<img src=http://127.0.0.1:8080/EasyCMS/pv.jsp border=0 width=0 height=0>");</script>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript获取多个数组的交集简单实例
Nov 11 Javascript
javascript的BOM汇总
Jul 16 Javascript
jquery实现LED广告牌旋转系统图片切换效果代码分享
Aug 26 Javascript
js手动播放图片实现图片轮播效果
Sep 17 Javascript
vue-cli如何引入bootstrap工具的方法
Oct 19 Javascript
浅谈Vue.js 组件中的v-on绑定自定义事件理解
Nov 17 Javascript
浅谈React组件之性能优化
Mar 02 Javascript
使用vue-cli webpack 快速搭建项目的代码
Nov 21 Javascript
vue中input的v-model清空操作
Sep 06 Javascript
vue 实现单选框设置默认选中值
Nov 07 Javascript
微信公众号H5之微信分享常见错误和问题(小结)
Nov 14 Javascript
vue+node 实现视频在线播放的实例代码
Oct 19 Javascript
基于JavaScript实现一定时间后去执行一个函数
Dec 14 #Javascript
javascript中new关键字详解
Dec 14 #Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
Dec 14 #Javascript
Position属性之relative用法
Dec 14 #Javascript
CSS中position属性之fixed实现div居中
Dec 14 #Javascript
通过设置CSS中的position属性来固定层的位置
Dec 14 #Javascript
js实现拖拽效果(构造函数)
Dec 14 #Javascript
You might like
利用PHP实现智能文件类型检测的实现代码
2011/08/02 PHP
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
2013/09/30 PHP
php 使用redis锁限制并发访问类示例
2016/11/02 PHP
PHP实现找出链表中环的入口节点
2018/01/16 PHP
详解Laravel服务容器的绑定与解析
2019/11/05 PHP
使用jscript实现二进制读写脚本代码
2008/06/09 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
2013/06/24 Javascript
JavaScript判断表单中多选框checkbox选中个数的方法
2015/08/17 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
js判断手机浏览器操作系统和微信浏览器的方法
2016/04/30 Javascript
jQuery动态加载css文件实现方法
2016/06/15 Javascript
bootstrap table小案例
2016/10/21 Javascript
Vue.js父与子组件之间传参示例
2017/02/28 Javascript
利用jQuery实现一个简单的表格上下翻页效果
2017/03/14 Javascript
Vue2.0系列之过滤器的使用
2018/03/01 Javascript
在vue项目中优雅的使用SVG的方法实例详解
2018/12/03 Javascript
Vue 用Vant实现时间选择器的示例代码
2019/10/25 Javascript
javascript中闭包closure的深入讲解
2021/03/03 Javascript
[03:42]2014DOTA2西雅图国际邀请赛7月9日TOPPLAY
2014/07/09 DOTA
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:奇迹哥卡尔秀翻全场
2017/03/28 DOTA
Python时间获取及转换知识汇总
2017/01/11 Python
Python使用matplotlib绘制三维图形示例
2018/08/25 Python
想学python 这5本书籍你必看!
2018/12/11 Python
局域网内python socket实现windows与linux间的消息传送
2019/04/19 Python
python GUI库图形界面开发之PyQt5中QMainWindow, QWidget以及QDialog的区别和选择
2020/02/26 Python
Python 实现键盘鼠标按键模拟
2020/11/18 Python
CSS改变网页中鼠标选中文字背景颜色例子
2014/04/23 HTML / CSS
美国糖果店:Sugarfina
2019/02/21 全球购物
匡威爱尔兰官网:Converse爱尔兰
2019/06/09 全球购物
黑猩猩商店:The Chimp Store
2020/02/12 全球购物
请写出 BOOL flag 与"零值"比较的 if 语句
2016/02/29 面试题
店铺转让协议书(2014版)
2014/09/23 职场文书
临床医学生职业规划书范文
2014/10/25 职场文书
爱岗敬业先进典型事迹材料(2016推荐版)
2016/02/26 职场文书
2016年第十四个公民道德宣传日活动总
2016/04/01 职场文书
python实现的人脸识别打卡系统
2021/05/08 Python