利用过滤器解决JavaWeb(JSP)的乱码问题
我们在做web项目的时候,在中文字符处理上最头痛的一个问题是乱码问题;通常我们是通过在代码里面加入各种设置编码的语句,来处理这个问题,但是有的时候真是收效甚微;而且更繁琐的是如果你的文件很多很多,很多处要进行编码设置,你得到处找到,哪里要进行设置,更坏的是,如果要改系统的编码设置,你想想这得花多大功夫,甚至是一件不可完成的任务。
过滤器机制是servlet的一个很好的拓展机制。用过滤器是这个问题的一个很好的解决方法。我们不是去找问题,而是等着问题来找上门来。在服务器端通过过滤器,将所有的request和response进行编码设置,就相当于一夫当关之效果。因为所有的请求、回复都是要经过过滤器的。下面就看如何实现这个简单的过滤器吧。
一、编写过滤器处理类
//CharsetFilter.java
package filter;
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;
//实现javax.servlet.Filter接口即可作为一个过滤器了
public class CharsetFilter implements Filter {