java 的 web
程序经常出现中文乱码的问题,用一个实现了 Filter 接口的过 滤器类可以较好地解决这个
问题。 1、新增过滤器类 EncodingFilter import java.io.IOException; import javax.servlet.*; public class EncodingFilterimplements Filter { private FilterConfig filterConfig= null; private String encoding= null; @Override public void destroy() { filterConfig= null; encoding= null; } @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)throws IOException, ServletException { if (request.getCharacterEncoding()== null) { if (encoding!= null) { request.setCharacterEncoding(encoding); } filterChain.doFilter(request, response); } } @Override public void init(FilterConfig filterConfig)throws ServletException { this.filterConfig= filterConfig; this.encoding= filterConfig.getInitParameter("encoding"); } } 2、
web.
xml 中加入
EncodingFilter EncodingFilter encoding UTF-8 EncodingFilter /* 3、 jsp 页面中设置 pageEncoding="UTF-8" ,表单提交方法 method="post"