这篇文章主要介绍了jsp中通过过滤器(Filter)解决JSP的Post和Request中文乱码问题的方法,需要的朋友可以参考下
jsp代码:
import javax.servlet.*; import javax.servlet.http.*; public class CharsetFilter implements Filter { public void destroy() { } public void doFilter(ServletRequest request, ServletResponse response, Filter<i style="color:transparent">来源gaodai$ma#com搞$代*码*网</i>Chain chain) { try { HttpServletRequest httpRequest = (HttpServletRequest)request; String method = httpRequest.getMethod().toLowerCase(); if(method.equals("post")) { //如果是post,即表单方法,直接设置charset即可 request.setCharacterEncoding("UTF-8"); } else if(method.equals("get")) { //如果是get方法 request.setCharacterEncoding("UTF-8"); request = new HttpServletRequestWrapper((HttpServletRequest)request) { public String getParameter(String str) { try { return new String(super.getParameter(str).getBytes("iso-8859-1"),"GBK"); } catch(Exception e) { return null; } } }; } chain.doFilter(request, response); } catch(Exception e){} } public void init(FilterConfig filterConfig) { } }
过滤器配置:
CharFilterCharsetFilter CharFilter/*REQUEST
以上就是通过过滤器(Filter)解决JSP的Post和Request中文乱码问题的详细内容,更多请关注gaodaima搞代码网其它相关文章!