`

java自学===Filter类的应用,网站数量统计

阅读更多
package filterStatistic;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
//使用过滤器统计网页的访问量
public class FilterFlux extends HttpServlet implements Filter {

    private static int flux = 0;

    public void init(FilterConfig filterConfig) throws ServletException {

    }

    public synchronized void doFilter(ServletRequest request, ServletResponse response,
                         FilterChain filterChain) throws
            ServletException, IOException {
       this.flux++;
       request.setAttribute("flux",String.valueOf(flux)); //将参数保存至request对象中
       filterChain.doFilter(request, response);
    }

    public void destroy() {
    }
}


web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <filter>
  	<filter-name>filterflux</filter-name>
  	<filter-class>filterStatistic.FilterFlux</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>filterflux</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>


index.jsp

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>使用过滤器进行网站流量统计纪录</title>
</head>

<body>
<div align="center">

  <table width="429" height="388" border="0" cellpadding="0" cellspacing="0" background="images/background.jpg">
    <tr align="center">
      <td ><%=request.getAttribute("flux")%>次</td>
    </tr>
  </table>
  <br>

</div>
</body>
</html>

输入http://localhost:8080/filter/
执行每刷新一次,增加2????
源代码见附件
分享到:
评论
2 楼 innocence0627 2012-05-05  
做得确实很不太好,每次刷新自加 事实上刷新时sessionid是不变的。。所以是不能计数的。。
1 楼 innocence0627 2012-05-05  
有些问题不可避免的要问下,若是同一个sessionid再次访问刚才的页面,会不会技术呢?刷新页面是不是也会计数呢?在filter中实现是做好不过啦,这样就不是使用独立的jsp来计数。  

相关推荐

    java自学===Filter类的应用,验证用户

    在"java自学===Filter类的应用,验证用户"这个话题中,我们关注的是使用Filter来检查用户是否已经登录,以确保他们有权访问特定的资源。这通常通过以下步骤完成: 1. 检查请求中的认证信息:例如,从HTTP请求头中...

    java自学==jsp实例

    本文将围绕"Java自学==jsp实例"这一主题,通过一个简单的JSP实例来深入理解其工作原理和应用。 首先,我们需要了解JSP的基本结构。JSP文件本质上是一个HTML文件,但其中可以嵌入Java代码。这些代码通常被放在`&lt;% %&gt;...

    java自学==javabean实例

    Java自学之路:深入理解JavaBean实例 在Java编程中,JavaBean是一种特殊的Java类,它遵循特定的设计规范,主要用于数据封装、属性交换以及组件开发。JavaBean是Java平台上的一个核心概念,尤其在企业级应用开发中...

    java自学==servlet

    Java自学之路——深入理解Servlet 在Java Web开发中,Servlet是一个不可或缺的核心技术,它是一种用于扩展服务器功能的Java类。本篇文章将引导你逐步深入了解Servlet,并通过实践来提升你的编程能力。 1. **...

    四年来个人收藏的java自学视频

    自学Java的过程中,首先需要掌握的是Java语言的基础概念,包括语法、数据类型、运算符、流程控制语句(如if、for、while等)、类与对象、封装、继承和多态等核心概念。这些是构建任何Java程序的基础,通过观看视频...

    java自学视频下载网址

    Java作为一种广泛使用的编程语言,在软件开发、网站构建以及企业级应用等多个领域都发挥着重要作用。对于希望通过视频自学Java的人来说,找到高质量的学习资源至关重要。 ### Java自学的重要性 在当前快速发展的IT...

    JAVA自学之路

    【JAVA自学之路】这篇资料主要针对想要通过自学进入IT行业,特别是Java开发领域的初学者,提供了选择方向和学习路径的建议。以下是对标题和描述中所述知识点的详细说明: 一、选择学习方向: 1. 不要盲目跟风:强调...

    Java自学教程

    史上最全的Java自学 教材,希望能帮到大家,谢谢! 史上最全的Java自学 教材,希望能帮到大家,谢谢!

    Java自学之道(完整版)

    Java自学之道是一本专为想要自我提升Java编程技能的学习者设计的指南。它涵盖了从基础知识到高级概念的全面内容,旨在帮助读者构建坚实的技术基础,理解Java语言的核心特性,并掌握实际开发中的应用技巧。 首先,从...

    Java自学网站,你值得拥有

    Java自学网站——how2j,是一个专为Java初学者和进阶者打造的在线学习平台。这个网站提供了丰富的学习资源,旨在帮助用户构建系统性的Java学习路径,让你在自学的道路上更加得心应手。其源代码的开放,使得学习者...

    java 自学资源源码

    Java自学资源源码是针对那些想要通过自我学习掌握Java编程语言的人们提供的宝贵资料。这份压缩包文件包含的"java book"很可能是一个或多个Java教程的电子书或者代码示例集合,旨在帮助初学者理解Java的基本概念、...

    java自学 指导建议

    ### Java自学之路:选择与路线图详解 #### 一、选择的重要性 在开始Java学习之旅之前,最重要的是明确自己的目标并做出明智的选择。这不仅包括选择适合自己的学习资源,还包括根据个人兴趣和发展方向来确定具体的...

    Java自学练习题

    Java自学练习题 适合自学或重新温习Java 题目有难有易

    Java自学程序源代码

    Java自学程序源代码是初学者和进阶者深入理解编程语言的重要资源,它提供了一手的实践材料,帮助学习者通过实例来探索和掌握Java语言的核心概念和特性。以下是一些关键的知识点,这些知识点可以从这个"Java自学程序...

    java自学之路--教你怎么开始学java

    【Java自学之路】对于初学者来说,学习Java编程语言是一个挑战,但也是一个充满机遇的过程。以下是一些关于如何开始自学Java的重要建议: 首先,选择学习Java的原因可能多种多样,但通常就业是主要驱动力。Java因其...

    java自学手册

    本部分将深入探讨Java的背景、发展历程以及它在Web和网络编程中的应用,从而帮助读者获得一个全面的Java自学框架。 首先,Java的历史与现状揭示了它作为一个编程语言的起点。Java起源于Sun公司的一个名为Green的...

Global site tag (gtag.js) - Google Analytics