网上很多资料但是都不是很全面在我的这个小的BBS中我采用的还是网上说的通过Servlet过滤器来解决,当然页面的设置编码都是UTF-8在这项目中只需要加上一个过滤器就能解决。
首先写一个过滤器类:
package wu.servlet;
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 Encoding implements Filter{
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
}
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
}
再配置web.xml文件添加到所有配置信息的开头
<filter>
<filter-name>encoding</filter-name>
<filter-class>wu.servlet.Encoding</filter-class>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
这样重新启动Myeclipse就能解决中文乱码问题了。