一。web.xml文件配置
xml 代码
- <filter>
- <filter-name>Filter User</filter-name>
- <filter-class>cn.lingqi.filter.LogonFilter</filter-class>
- <init-param>
- <param-name>encoding</param-name>
- <param-value>gb2312</param-value>
- </init-param>
- </filter>
- <!-- filter-mapping>
- <filter-name>Set Character Encoding</filter-name>
- <url-pattern>/servlet/*</url-pattern>
- </filter-mapping-->
- <filter-mapping>
- <filter-name>Filter User</filter-name>
- <url-pattern>/cggl/list_vender.jsp</url-pattern>
- </filter-mapping>
二。filter类使用举例
java 代码
- package cn.lingqi.filter;
-
- import java.io.IOException;
- import java.io.PrintWriter;
-
- import javax.servlet.Filter;
- import javax.servlet.FilterChain;
- import javax.servlet.FilterConfig;
- import javax.servlet.ServletException;
- import javax.servlet.ServletRequest;
- import javax.servlet.ServletResponse;
-
- public class LogonFilter implements Filter{
- protected FilterConfig filterConfig = null;
- protected String encoding = null;
- public void destroy() {
-
-
- }
-
- public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
- response.setContentType("text/html;charset=gb2312");
- PrintWriter out = response.getWriter();
- if ((request.getCharacterEncoding() == null)) {
- String encoding = selectEncoding(request);
- if (encoding != null)
- request.setCharacterEncoding(encoding);
- }
- out.println("<script>alert('test filter');</script>");
- chain.doFilter(request, response);
-
- }
-
- public void init(FilterConfig filterConfig) throws ServletException {
- this.filterConfig = filterConfig;
- this.encoding = filterConfig.getInitParameter("encoding");
- }
-
- protected String selectEncoding(ServletRequest request) {
-
- return (this.encoding);
-
- }
- }
-
|
相关推荐
本文将详细解释如何使用乱码过滤类和配置来解决这个问题。 首先,我们来看乱码过滤类的作用。这类类通常是为了在数据传输或存储过程中,对可能出现的乱码进行预防或修复。它通过识别和转换不同的字符编码格式,确保...
总之,通过使用Filter过滤器和`web.xml`配置,我们可以轻松地在Web后端实现访问量统计。这种方式简单易懂,且具有很高的灵活性,可以根据项目需求进行扩展和定制。在理解了Filter的基本原理和配置方式后,开发者可以...
这包括验证`web.xml`或Java配置类中的`@WebFilter`注解设置,如filter-name、url-pattern和dispatcherTypes。 2. **初始化测试**:测试`init`方法,确认初始化参数是否正确传递并被Filter实例所使用。可以使用...
Intent-filter的配置对于正确地启动和接收意图至关重要。在给定的标题“Data、Type属性与Intent-filter配置”中,我们关注的重点是如何通过设置`data`和`type`属性来过滤Intent,以便指定的应用组件(如Activity)...
本文将深入探讨`Filter`的使用,并以一个登录验证的实例来阐述其工作原理和应用。 `Filter`是Java Servlet规范定义的一种机制,它允许开发者在请求到达目标Servlet或JSP之前以及响应离开Servlet容器返回给客户端...
7. **Test_Filter**:这个压缩文件可能包含了一些测试代码或示例,用于演示Filter的使用和功能。通常,开发者会创建一个或多个Filter类,然后在测试中模拟HTTP请求来观察Filter的效果。 由于原始描述信息不足,以上...
- **注解配置**:这种方式更加简洁,可以直接在`Filter`类上使用注解来定义过滤器的行为。本例采用的就是这种方式。 #### 四、示例代码解析 下面将结合给定的部分内容,详细分析如何使用注解来配置`Filter`。 ```...
5. 使用注解配置:如果你的项目使用了Spring或其他依赖注入框架,可以考虑使用注解配置Filter,这可以让你的配置更加简洁和灵活。 使用Filter作为控制器的MVC模式有以下优势: - 提高了代码的可测试性:因为Filter...
然后需要在SpringBoot应用中配置Filter,可以通过实现WebMvcConfigurer接口并重写addFilters方法,或者使用@ServletComponentScan注解来自动注册带有@WebFilter注解的类。 在SpringBoot中,过滤器经常用于请求日志...
2. 使用@Configuration注解标记Filter类,表示这是一个配置类。 3. 使用@Bean注解将Filter实例注册到Spring容器中。 4. 如果需要自定义过滤规则,可以重写addFilters()或addInterceptors()方法。 5. Spring Boot应用...
通过使用自定义的Filter来防止SQL注入和XSS攻击是一种常见且有效的安全措施。本文介绍了如何实现一个简单的XssFilter,并详细解释了其工作原理。在实际项目中,开发者还可以根据具体的业务需求进一步完善过滤逻辑,...
3. **配置Filter**:在`web.xml`中配置自定义的Filter,确保其在请求处理链中执行。 4. **解决乱码问题**:通过设置响应输出流的字符集编码来避免乱码。 #### 三、具体实现细节 ##### 1. 封装`HttpServletRequest...
### Java中的Filter(过滤器)使用详解 ...以上就是关于Java中Filter(过滤器)的一些基本概念和具体实现方式的详细介绍。通过合理的使用Filter,开发者可以轻松地实现许多强大的功能,提高应用程序的安全性和性能。
在Java Web开发中,`Filter`的配置通常在`web.xml`文件中完成,通过定义`<filter>`和`<filter-mapping>`元素来指定`Filter`类和它应该拦截的URL模式。例如,`url-pattern`可以是星号(*),表示拦截所有请求,或者可以...
Action配置告诉Struts2如何映射URL到具体的Action类,例如: ```xml <result name="success">/success.jsp <result name="error">/error.jsp ``` 上述配置表示,当用户访问“/login”时,Struts2将调用`...
### JSP中Filter类实现过滤器功能 #### 概述 在Java Web开发中,`Filter`是一种常用的技术,它可以对请求和响应进行预处理或后处理,常用于执行一些通用的操作,例如权限验证、编码统一设置、敏感词过滤等。本文...
使用`filter`,我们可以创建一个专门的`Filter`类,用于拦截所有进入的请求。在这个过滤器中,我们同样会检查用户的留言内容,并进行敏感词替换。一旦匹配到敏感词,就进行相应的处理。优点是,`filter`可以作为...
### Filter程序开发与应用知识点详解 #### 一、Filter概述 **Filter** 是 Java Web 开发中的一个重要组件,主要... - 可以考虑将 Filter 设计为抽象类或接口,然后根据不同项目的具体需求来实现具体的子类或实现类。
在给定的压缩包文件`miniprogram-test-1`中,可能包含了具体的示例代码,你可以参考这些例子学习如何在实际项目中应用和自定义`filter`,提升微信小程序的用户体验。 总之,`filter`是微信小程序开发中的一个重要...