学习笔记5_Day09_网站访问量统计小练习

练习:访问量统计

  一个项目中所有的资源被访问都要对访问量进行累加!

  创建一个int类型的变量,用来保存访问量,然后把它保存到ServletContext的域中,这样可以保存所有的Servlet都可以访问到!

    1、  最初时,ServletContext中没有保存访问量相关的属性;

    2、  当本站第一次被访问时,创建一个变量,设置其值为1;保存到ServletContext中;

    3、  当以后的访问时,就可以从ServletContext中获取这个变量,然后在其基础之上加1。

    4、 获取ServletContext对象,查看是否存在名为count的属性,如果存在,说明不是第一次访问,如果不存在,说明是第一次访问;

  • 第一次访问:调用Servletcontext的setAttribute()传递一个属性,名为count,值为1;
  • 第2~N次访问:调用ServletContext的getAttribute()方法获取原来的访问量,给访问量加1,再调用Servletcontext的setAttribute()方法完成设置。

  相信各位一定见过很多访问量统计的网站,即“本页面被访问过XXX次”。因为无论是哪个用户访问指定页面,都会累计访问量,

所以这个访问量统计应该是整个项目共享的!很明显,这需要使用ServletContext来保存访问量。


ServletContext application  = this.getServletContext();[崔1]

Integer count = (Integer)application.getAttribute("count")[崔2] ;

if(count == null) {

count = 1;[崔3]

} else {

count++[崔4] ;

}

response.setContentType("text/html;charset=utf-8");

response.getWriter().print("<h1>本页面一共被访问" + count + "次!</h1>")[崔5] ;

application.setAttribute("count", count);[崔6]


[崔1]获取ServletContext对象

[崔2]获取ServletContext对象中的count属性

[崔3]如果在ServletContext中不存在count属性,那么设置count的值为1,表示第一次被访问。

[崔4]如果在ServletContext中存在count属性,说明以前被访问过,那么让count在原来的基础上加1。

[崔5]向客户端响应本页面被访问的次数。

[崔6]保存count的值到ServletContext对象中。

时间: 2024-10-11 14:21:06

学习笔记5_Day09_网站访问量统计小练习的相关文章

javascript实现的网站访问量统计代码实例

javascript实现的网站访问量统计代码实例: 作为一个网站的管理员或者说站长,都希望知道到底有多少人访问了网站,这个时候就需要有一个统计功能来满足需要,当然功能比较单一和简单,如果想要强大的统计效果,那最好还是使用现在比较成熟的功统计工具,比如站长统计或者腾讯统计等等. 代码如下: <script type="text/javascript"> var caution=false function setCookie(name,value,expires,path,d

javascript实现的网站访问量统计代码

javascript实现的网站访问量统计代码:网站一般都有访问量统计工具,比较高效实用的工具多种多样,并且非常的精确.实用javascript也可以简单的实现此功能,尽管没有网络上常用的精确,不过的确也实现了一定的功能,下面就是一段代码实例,感兴趣的朋友可以参考一下: <script type="text/javascript"> /** * vlstat 浏览器统计脚本 */ var statIdName = "vlstatId"; var xmlHt

ASP.net中网站访问量统计方法代码(在线人数,本月访问,本日访问,访问流量,累计访问)

一.建立一个数据表IPStat用于存放用户信息 我在IPStat表中存放的用户信息只包括登录用户的IP(IP_Address),IP来源(IP_Src)和登录时间 (IP_DateTime),些表的信息本人只保存一天的信息,如果要统计每个月的信息则要保存一个月.因为我不太懂对数据日志的操作,所以创建此表,所 以说我笨吧,哈哈. 二.在Global.asax中获取用户信息 在Global.asax的Session_Start即新会话启用时获取有关的信息,同时在这里实现在线人数.访问总人数的增量统计

网站访问量统计功能的实现

实现方法:拦截器+session存储 拦截器初始化时,即在@PostConstruct注解的initMethod方法中读取数据库的isystem对象,该对象记录了网站访问量的信息. 拦截器销毁时,即在@PreDestroy注解的destroyMethod方法中向数据库更新isystem对象. 拦截器的初始化和销毁都只有在应用启动和关闭的时候才被调用,因此减少了对数据库的访问. SpringMVC中,每一次请求控制器,都会先执行拦截器的preHandle方法,在该方法内先查看session中的一个

PHP学习笔记:php网络流量统计系统

 说明:代码来源<PHP和MySQL Web应用开发>一书,还有就是代码有些是经过修改的,经过我的测验全部都可以用. 这里面ip地址显示的正常的,我电脑是支持 ipv6 的. 本示例的数据库脚本 ~~~ 先执行 set names gbk;   (因为脚本中包含中文)再执行语句: source d:\test\Vote.sql; CREATE DATABASE IF NOT EXISTS FluxStat COLLATE 'gb2312_chinese_ci'; USE FluxStat; C

Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍

一.项目背景与数据情况 1.1 项目来源 本次要实践的数据日志来源于国内某知名的技术学习论坛,该论坛由某培训学校主办,汇聚了众多技术学习者,每天都有人发帖.回帖,如图1所示. 图1 项目来源网站-技术学习论坛 本次实践的目的就在于通过对该技术论坛的apache common日志进行分析,计算该论坛的一些关键指标,供运营者进行决策时参考. PS:开发该系统的目的是分了获取一些业务相关的指标,这些指标在第三方工具中无法获得的: 1.2 数据情况 该论坛数据有两部分: (1)历史数据约56GB,统计到

Hadoop学习笔记—20.网站日志分析项目案例(三)统计分析

网站日志分析项目案例(一)项目介绍:http://www.cnblogs.com/edisonchou/p/4449082.html 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edisonchou/p/4458219.html 网站日志分析项目案例(三)统计分析:当前页面 一.借助Hive进行统计 1.1 准备工作:建立分区表 为了能够借助Hive进行统计分析,首先我们需要将清洗后的数据存入Hive中,那么我们需要先建立一张表.这里我们选择分区表,以日期作

Hadoop学习笔记—20.网站日志分析项目案例(二)数据清洗

网站日志分析项目案例(一)项目介绍:http://www.cnblogs.com/edisonchou/p/4449082.html 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edisonchou/p/4458219.html 一.数据情况分析 1.1 数据情况回顾 该论坛数据有两部分: (1)历史数据约56GB,统计到2012-05-29.这也说明,在2012-05-29之前,日志文件都在一个文件里边,采用了追加写入的方式. (2)自2013-05-30

单片机 学习笔记(二)——简单小程序

今天收获了单片机的几个简单小程序:     延时程序: void Delay(unsigned int xx) //输入 xx :ms { while(xx--) { Delay1ms(); } } void Delay1ms() //@11.0592MHz 1ms { unsigned char i, j; _nop_(); _nop_(); _nop_(); i = 11; j = 190; do { while (--j); } while (--i); } 流水灯程序: #include