使用ServletRequestListener监听器实现对网站访问流量的监控

ServletRequestListener

ServletRequestListener接口能监听每一个request的请求的创建和销毁,用来记录网站的浏览量非常合适,可以按照每一分钟来统计有多少request请求,请求产生的数据技术则可以放在ServletContext全局对象中进行设置和读取
实现requestInitialized()方法

	@Override
	public void requestInitialized(ServletRequestEvent arg0) {
		HttpServletRequest hsr= (HttpServletRequest)arg0.getServletRequest();
		//过滤统计请求,避免多计算
		String url= hsr.getRequestURL().toString();
		if(url.endsWith("/reqt")){
			return;
		}
		//获取ServletContext
		ServletContext sc =arg0.getServletContext();
		List<String> timelist =(List)sc.getAttribute("timelist");
		List<Integer> valuelist =(List)sc.getAttribute("valuelist");
		Date now =new Date();
		SimpleDateFormat sdf =new SimpleDateFormat("MM-dd HH:mm");
		String min= sdf.format(now);
		if(timelist.indexOf(min)==-1){//新的一分钟
			timelist.add(min);
			valuelist.add(1);
			sc.setAttribute("timelist", timelist);
			sc.setAttribute("valuelist", valuelist);
		}else{
			int i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值