最近在做一个DRP 的项目,其中要给所有的request对象进行字符集设置,要是单个设置工作量太大,所以采用Filter(过滤器)进行统一设置。
Filter实现了面向切面(AOP)的编程思想,可以通过简单的修改配置文件给系统统一添加或去除一项功能。
下面是我对的Filter的简单总结:
Filter的功能
- filter实现了职责连模式
- filter对request和response进行处理
- filter 只对POST请求起作用
在配置文件中的配置
<filter>
<filter-name></filter-name>
<filter-class></filter-class>
</filter>
<filter-mapping>
<filter-name></filter-name>
<url-pattern></url-pattern>
</filter-mapping>
Url-pattern的四种模式
1.精确匹配,一个唯一确定的路径
2.扩展匹配,由“*”和扩展名组成
3.路径前缀匹配,包含一个路径和一个/*
4.全部匹配,使用/*
如果不执行filterChain.doFilter(),那么请求将会终止
初始化参数
<filter>
<filter-name></filter-name>
<filter-class></filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
可在init方法中获取参数
public voidinit(FilterConfig filterConfig) throws ServletException {
//获取初始化参数
this.encoding=filterConfig.getInitParameter("encoding");
}
刚刚接触Filter,一点小总结。
本文介绍了在DRP项目中如何使用Filter实现统一的字符集设置。Filter通过简单的配置即可为整个系统添加或移除功能,特别适用于大量request对象的处理。文章详细解释了Filter的工作原理、配置方式及其在不同请求类型中的作用。
4268

被折叠的 条评论
为什么被折叠?



