`
flamezealot
  • 浏览: 20927 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

filter类的具体使用和配置

阅读更多

一。web.xml文件配置

xml 代码
  1. <filter>  
  2.    <filter-name>Filter User</filter-name>  
  3.   <filter-class>cn.lingqi.filter.LogonFilter</filter-class>  
  4.   <init-param>  
  5.    <param-name>encoding</param-name>  
  6.    <param-value>gb2312</param-value>  
  7.   </init-param>  
  8.   </filter>    
  9.    <!-- filter-mapping>  
  10.  <filter-name>Set Character Encoding</filter-name>  
  11.  <url-pattern>/servlet/*</url-pattern>    
  12.   </filter-mapping-->  
  13.   <filter-mapping>  
  14.  <filter-name>Filter User</filter-name>  
  15.  <url-pattern>/cggl/list_vender.jsp</url-pattern>    
  16.   </filter-mapping>  

二。filter类使用举例

java 代码
  1. package cn.lingqi.filter;   
  2.   
  3. import java.io.IOException;   
  4. import java.io.PrintWriter;   
  5.   
  6. import javax.servlet.Filter;   
  7. import javax.servlet.FilterChain;   
  8. import javax.servlet.FilterConfig;   
  9. import javax.servlet.ServletException;   
  10. import javax.servlet.ServletRequest;   
  11. import javax.servlet.ServletResponse;   
  12. //用户登陆筛选器   
  13. public class LogonFilter implements Filter{   
  14.  protected FilterConfig filterConfig = null;   
  15.  protected String encoding = null;   
  16.  public void destroy() {   
  17.   // TODO Auto-generated method stub   
  18.      
  19.  }   
  20.   
  21.  public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {   
  22.   response.setContentType("text/html;charset=gb2312");   
  23.   PrintWriter out = response.getWriter();   
  24.   if ((request.getCharacterEncoding() == null)) {   
  25.             String encoding = selectEncoding(request);   
  26.             if (encoding != null)   
  27.                 request.setCharacterEncoding(encoding);   
  28.         }   
  29.   out.println("<script>alert('test filter');</script>");   
  30.   chain.doFilter(request, response);   
  31.      
  32.  }   
  33.   
  34.  public void init(FilterConfig filterConfig) throws ServletException {   
  35.   this.filterConfig = filterConfig;   
  36.         this.encoding = filterConfig.getInitParameter("encoding");   
  37.  }   
  38.   
  39.   protected String selectEncoding(ServletRequest request) {   
  40.   
  41.          return (this.encoding);   
  42.   
  43.      }   
  44. }   
  45.   
分享到:
评论

相关推荐

    乱码过滤类和配置使用方法

    本文将详细解释如何使用乱码过滤类和配置来解决这个问题。 首先,我们来看乱码过滤类的作用。这类类通常是为了在数据传输或存储过程中,对可能出现的乱码进行预防或修复。它通过识别和转换不同的字符编码格式,确保...

    Web后端开发-使用Filter过滤器技术,实现访问量统计-方法二使用web.xml配置的方式

    总之,通过使用Filter过滤器和`web.xml`配置,我们可以轻松地在Web后端实现访问量统计。这种方式简单易懂,且具有很高的灵活性,可以根据项目需求进行扩展和定制。在理解了Filter的基本原理和配置方式后,开发者可以...

    Servlet Filter 的单元测试

    这包括验证`web.xml`或Java配置类中的`@WebFilter`注解设置,如filter-name、url-pattern和dispatcherTypes。 2. **初始化测试**:测试`init`方法,确认初始化参数是否正确传递并被Filter实例所使用。可以使用...

    Data、Type属性与Intent-filter配置

    Intent-filter的配置对于正确地启动和接收意图至关重要。在给定的标题“Data、Type属性与Intent-filter配置”中,我们关注的重点是如何通过设置`data`和`type`属性来过滤Intent,以便指定的应用组件(如Activity)...

    Filter使用范例--登陆验证

    本文将深入探讨`Filter`的使用,并以一个登录验证的实例来阐述其工作原理和应用。 `Filter`是Java Servlet规范定义的一种机制,它允许开发者在请求到达目标Servlet或JSP之前以及响应离开Servlet容器返回给客户端...

    Filter

    7. **Test_Filter**:这个压缩文件可能包含了一些测试代码或示例,用于演示Filter的使用和功能。通常,开发者会创建一个或多个Filter类,然后在测试中模拟HTTP请求来观察Filter的效果。 由于原始描述信息不足,以上...

    Servlet配置过滤器 Filter

    - **注解配置**:这种方式更加简洁,可以直接在`Filter`类上使用注解来定义过滤器的行为。本例采用的就是这种方式。 #### 四、示例代码解析 下面将结合给定的部分内容,详细分析如何使用注解来配置`Filter`。 ```...

    用 Filter 作为控制器的 MVC

    5. 使用注解配置:如果你的项目使用了Spring或其他依赖注入框架,可以考虑使用注解配置Filter,这可以让你的配置更加简洁和灵活。 使用Filter作为控制器的MVC模式有以下优势: - 提高了代码的可测试性:因为Filter...

    SpringBoot拦截器Filter的使用方法详解

    然后需要在SpringBoot应用中配置Filter,可以通过实现WebMvcConfigurer接口并重写addFilters方法,或者使用@ServletComponentScan注解来自动注册带有@WebFilter注解的类。 在SpringBoot中,过滤器经常用于请求日志...

    filter过滤器的简单使用.rar

    2. 使用@Configuration注解标记Filter类,表示这是一个配置类。 3. 使用@Bean注解将Filter实例注册到Spring容器中。 4. 如果需要自定义过滤规则,可以重写addFilters()或addInterceptors()方法。 5. Spring Boot应用...

    防止SQL注入和XSS攻击Filter

    通过使用自定义的Filter来防止SQL注入和XSS攻击是一种常见且有效的安全措施。本文介绍了如何实现一个简单的XssFilter,并详细解释了其工作原理。在实际项目中,开发者还可以根据具体的业务需求进一步完善过滤逻辑,...

    java filter打印请求返回参数

    3. **配置Filter**:在`web.xml`中配置自定义的Filter,确保其在请求处理链中执行。 4. **解决乱码问题**:通过设置响应输出流的字符集编码来避免乱码。 #### 三、具体实现细节 ##### 1. 封装`HttpServletRequest...

    java中filter的用法(过滤器)

    ### Java中的Filter(过滤器)使用详解 ...以上就是关于Java中Filter(过滤器)的一些基本概念和具体实现方式的详细介绍。通过合理的使用Filter,开发者可以轻松地实现许多强大的功能,提高应用程序的安全性和性能。

    webfilter的教程

    在Java Web开发中,`Filter`的配置通常在`web.xml`文件中完成,通过定义`&lt;filter&gt;`和`&lt;filter-mapping&gt;`元素来指定`Filter`类和它应该拦截的URL模式。例如,`url-pattern`可以是星号(*),表示拦截所有请求,或者可以...

    struts2所有包和配置文件

    Action配置告诉Struts2如何映射URL到具体的Action类,例如: ```xml &lt;result name="success"&gt;/success.jsp &lt;result name="error"&gt;/error.jsp ``` 上述配置表示,当用户访问“/login”时,Struts2将调用`...

    jsp中Filter类实现过滤器功能

    ### JSP中Filter类实现过滤器功能 #### 概述 在Java Web开发中,`Filter`是一种常用的技术,它可以对请求和响应进行预处理或后处理,常用于执行一些通用的操作,例如权限验证、编码统一设置、敏感词过滤等。本文...

    替换敏感词的留言板加filter 和不加filter两种方案

    使用`filter`,我们可以创建一个专门的`Filter`类,用于拦截所有进入的请求。在这个过滤器中,我们同样会检查用户的留言内容,并进行敏感词替换。一旦匹配到敏感词,就进行相应的处理。优点是,`filter`可以作为...

    Filter程序开发与应用上机手册

    ### Filter程序开发与应用知识点详解 #### 一、Filter概述 **Filter** 是 Java Web 开发中的一个重要组件,主要... - 可以考虑将 Filter 设计为抽象类或接口,然后根据不同项目的具体需求来实现具体的子类或实现类。

    微信小程序filter使用模板

    在给定的压缩包文件`miniprogram-test-1`中,可能包含了具体的示例代码,你可以参考这些例子学习如何在实际项目中应用和自定义`filter`,提升微信小程序的用户体验。 总之,`filter`是微信小程序开发中的一个重要...

Global site tag (gtag.js) - Google Analytics