通过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>

 

 

目录
相关文章
|
17天前
【超实用】Angular如何修改当前页面网页浏览器url后面?param1=xxx&param2=xxx参数(多用于通过浏览器地址参数保存用户当前操作状态的需求),实现监听url路由切换、状态变化。
【超实用】Angular如何修改当前页面网页浏览器url后面?param1=xxx&param2=xxx参数(多用于通过浏览器地址参数保存用户当前操作状态的需求),实现监听url路由切换、状态变化。
|
4月前
|
缓存 网络协议 前端开发
一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么
一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么
26 0
|
9月前
|
存储 缓存 网络协议
从输入URL到页面加载的全过程?隐藏元素有哪些方式,有什么区别?什么是内存泄漏?
1. 在浏览器地址栏输入url并回车 2. 浏览器查看是否有缓存,比较缓存是否过期,无缓存或过期则重新发起请求 3. DNS解析域名对应的IP 4. 根据IP建立TCP链接,即三次握手 5. 发送http请求 6. 服务器响应并返回结果 7. 关闭TCP链接,即四次挥手 8. 渲染页面,构建DOM树
|
PHP 数据库
织梦DEDECMS自动内链一个关键字对应多个链接随机调用的设置方法
利用dedecsm织梦自动内链的时候,可能会有一个关键字对应多个网站,随机调用网址的需求,比如(织梦自动内链)这个关键词一些文章内链链接到网站的首页,一些链接到文章页,但是织梦中原带的功能,一个关键词只能加一个网址,网上找了很多办法也没有找到可用的,还好米米素材网懂一点点php,哪就自己动手吧。下面是织梦自动内链一个关键字对应多个链接,随机调用这些链接的解决办法。
网站页面指标之加载类型和页面资源加载数
网站页面指标之加载类型和页面资源加载数
144 0
网站页面指标之加载类型和页面资源加载数
|
数据采集 大数据 数据库
爬虫识别-小于自设值的次数-代码实现读取默认时间|学习笔记
快速学习爬虫识别-小于自设值的次数-代码实现读取默认时间。
93 0
爬虫识别-小于自设值的次数-代码实现读取默认时间|学习笔记
|
数据采集 分布式计算 大数据
爬虫识别-关键页面最小访问间隔-效果及总结|学习笔记
快速学习爬虫识别-关键页面最小访问间隔-效果及总结
53 0
爬虫识别-关键页面最小访问间隔-效果及总结|学习笔记
|
数据采集 大数据 数据库
爬虫识别-关键页面最小访问间隔-上|学习笔记
快速学习爬虫识别-关键页面最小访问间隔-上。
66 0
|
数据采集 存储 大数据
爬虫识别-关键页面最小访问间隔-下|学习笔记
快速学习爬虫识别-关键页面最小访问间隔-下
72 0
|
JavaScript 前端开发 开发工具
根据用户不同请求返回不同html文件(带图片)|学习笔记
快速学习根据用户不同请求返回不同html文件(带图片)
109 0
根据用户不同请求返回不同html文件(带图片)|学习笔记