JSP乱码过滤器

原创 2007年09月20日 20:03:00

过滤器代码

package com.blog.filter;
import java.io.*;
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 SetCharacterEncodingFilter implements Filter {
 
 protected String encoding = null;
 protected FilterConfig filterConfig = null;
 protected boolean ignore = true;

 public void destroy(){
  this.encoding = null;
  this.filterConfig = null;
 }
  
 public void doFilter(ServletRequest request,
       ServletResponse response,
       FilterChain chain) throws IOException, ServletException {
  // Conditionally select and set the character encoding to be used
  if (ignore || (request.getCharacterEncoding() == null)) {
   String encoding = selectEncoding(request);
   if (encoding != null){
    request.setCharacterEncoding(encoding);
   }
  }
  // Pass control on to the next filter
  chain.doFilter(request, response);
   }
  
   public void init(FilterConfig filterConfig) throws ServletException {
    this.filterConfig = filterConfig;
    this.encoding = filterConfig.getInitParameter("encoding");
    String value = filterConfig.getInitParameter("ignore");
    if (value == null)
     this.ignore = true;
    else if (value.equalsIgnoreCase("true"))
     this.ignore = true;
    else if (value.equalsIgnoreCase("yes"))
     this.ignore = true;
    else
     this.ignore = false;
   }
  
   protected String selectEncoding(ServletRequest request) {
    return (this.encoding);
   }
}

<!-- 字符串过滤器Web.xml配置信息 -->
  <filter>
   <filter-name>SetCharacterEncodingFilter</filter-name>
   <filter-class>com.blog.filter.SetCharacterEncodingFilter</filter-class>
   <init-param>
    <param-name>encoding</param-name>
    <param-value>utf-8</param-value>
   </init-param>
  </filter>
  <filter-mapping>
    <filter-name>SetCharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping> 

JSP用过滤器解决request中文乱码问题

(1)客户端的数据一般是通过HTTP  GET/POST方式提交给服务器,在服务器端用request.getParameter() 读取参数时,很容易出现中文乱码现象。 (2)用过滤器解决requ...
  • u010870518
  • u010870518
  • 2014年09月10日 14:01
  • 2040

java web过滤器实际应用(解决中文乱码 html标签转义功能 敏感字符过滤功能)

转载地址:http://www.cnblogs.com/xdp-gacl/p/3952405.html 在filter中可以得到代表用户请求和响应的request、response对...
  • alleged
  • alleged
  • 2016年08月18日 17:13
  • 2119

配置Java Web中文乱码的过滤器

编写CharacterEncodingFilter类让其继承Filter,其中Filter导包应该为import javax.servlet.Filter;如果没有这个包需要配置服务器(可配置tomc...
  • DayDayPlayPhone
  • DayDayPlayPhone
  • 2015年11月12日 18:37
  • 1720

如何配置Filter过滤器处理JSP中文乱码

  • 2013年10月30日 09:07
  • 19KB
  • 下载

过滤器,Jsp开发中的避免中文乱码

  • 2011年06月24日 20:00
  • 333KB
  • 下载

利用过滤器解决JavaWeb(JSP)的乱码问题

  • 2012年07月31日 14:48
  • 7KB
  • 下载

JSP乱码解决过滤器

  • 2013年06月05日 13:47
  • 21KB
  • 下载

使用过滤器Filter解决JSP+Servlet页面编码乱码

最近又拿起jsp+servlet来做项目,遇到了乱码的问题。解决方案很多,这次决定用过滤器来解决传值过程中的乱码问题。当然前提是tomcat没修改过connector配置项中的uriencoding,...
  • itpinpai
  • itpinpai
  • 2012年11月29日 22:07
  • 1275

jsp filter过滤器 解决post 以及get乱码问题

不多说了 直接贴代码: import java.io.IOException; import java.util.Map; import java.util.Set; import javax.se...
  • qqahanson
  • qqahanson
  • 2014年12月09日 17:39
  • 413

jsp过滤器解决乱码

(1)前言: 解决web程序的国际化问题,必须在任何地方使用UTF-8对字符进行编码。(包括:数据库设置为:UTF-8,web页面也要设置为:UTF-8) 这样做的好处在于可以解决在web上不止中...
  • xiaotaoqibao
  • xiaotaoqibao
  • 2011年09月22日 11:53
  • 3418
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSP乱码过滤器
举报原因:
原因补充:

(最多只允许输入30个字)