1、写好过滤器Java源文件文件(名称为:CharacterEncodingFilter)
package com.cky.firstStruts.common.CharacterEncodingFilter
import java.io.IOException;
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 CharacterEncodingFilter implements Filter {
String encoding = null;
FilterConfig filterConfig = null;
/** 初始化方法 */
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
this.encoding = filterConfig.getInitParameter("encoding");
}
/** 处理过滤方法 */
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException {
if(encoding != null){
//对请求进行编码设置
request.setCharacterEncoding(encoding);
}
//将处理权转交给下一个处理器
filterChain.doFilter(request, response);
}
/** 销毁方法 */
public void destroy() {
this.encoding = null;
this.filterConfig = null;
}
}
过滤器文件就写好了,接下来就是配置了。
2、在XML配置
<!-- 配置过滤器 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>com.cky.firstStruts.common.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>ignore</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
最近记性很不好的.老是忘记东西,居然忘记过滤器要实现哪个类.看来不用真的很快忘记了!写一个记录一下.