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 字符串乘法
Aug 20 Javascript
JQuery通过Ajax提交表单并返回结果
Jul 31 Javascript
js使用心得分享
Jan 13 Javascript
javascript页面倒计时实例
Jul 25 Javascript
浅析函数声明和函数表达式——函数声明的声明提前
May 03 Javascript
vue实现简单实时汇率计算功能
Jan 15 Javascript
js实现横向拖拽导航条功能
Feb 17 Javascript
bootstrap select下拉搜索插件使用方法详解
Nov 23 Javascript
JS异步错误捕获的一些事小结
Apr 26 Javascript
微信小程序实现多行文字超出部分省略号显示功能
Oct 23 Javascript
基于aotu.js实现微信自动添加通讯录中的联系人功能
May 28 Javascript
详解Vue的列表渲染
Nov 20 Vue.js
基于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/07/22 PHP
php代码书写习惯优化小结
2013/06/20 PHP
js限制checkbox勾选的个数以及php获取多个checkbbox的方法深入解析
2013/07/18 PHP
php中使用websocket详解
2016/09/23 PHP
在Mac OS下搭建LNMP开发环境的步骤详解
2017/03/10 PHP
Javascript下的keyCode键码值表
2007/04/10 Javascript
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
2008/08/14 Javascript
return false,对阻止事件默认动作的一些测试代码
2010/11/17 Javascript
修改好的jquery滚动字幕效果实现代码
2011/06/22 Javascript
JS 各种网页尺寸判断实例方法
2013/04/18 Javascript
js随机生成网页背景颜色的方法
2015/02/26 Javascript
JS模拟键盘打字效果的方法
2015/08/05 Javascript
jQuery实现frame之间互通的方法
2017/06/26 jQuery
vue服务端渲染缓存应用详解
2018/09/12 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
JS通过识别id、value值对checkbox设置选中状态
2020/02/19 Javascript
[02:16]深扒TI7聊天轮盘语音出处2
2017/05/11 DOTA
[35:29]Secret vs VG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python计算两个矩形框重合百分比的实例
2018/11/07 Python
python正则-re的用法详解
2019/07/28 Python
python3实现mysql导出excel的方法
2019/07/31 Python
Python各种扩展名区别点整理
2020/02/27 Python
css3 按钮样式简单可扩展创建
2013/03/18 HTML / CSS
Nuts.com:优质散装,批发坚果、干果和巧克力等
2017/03/21 全球购物
C语言编程练习
2012/04/02 面试题
软件工程师面试题
2012/06/25 面试题
会计电算化专业自荐信
2014/03/15 职场文书
2016自主招生教师推荐信范文
2015/03/23 职场文书
焦裕禄纪念馆观后感
2015/06/09 职场文书
2015年暑期社会实践总结
2015/07/13 职场文书
护士年终工作总结不会写?各科护士模板总结
2020/01/02 职场文书
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android
MySql子查询IN的执行和优化的实现
2021/08/02 MySQL
基于Redis zSet实现滑动窗口对短信进行防刷限流的问题
2022/02/12 Redis
对象析构函数__del__在Python中何时使用
2022/03/22 Python
python数字图像处理:图像的绘制
2022/06/28 Python