Java过滤器过滤特殊字符

package util;

import java.io.IOException;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;

public class StringFilter implements Filter {

public void destroy() {
// TODO Auto-generated method stub

}

public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
//非法字符过滤
HttpServletRequest request=(HttpServletRequest)arg0;
Map map=request.getParameterMap();
Collection coll= map.values();
for (Iterator iterator = coll.iterator(); iterator.hasNext();) {
String[] s = (String[]) iterator.next();
for (int i = 0; i < s.length; i++) {
s[i]=s[i].replaceAll("日本", "**");//Pattern
s[i]=s[i].replaceAll("<", "&lt;");
s[i]=s[i].replaceAll(">", "&gt;");

//根据自己的需求去处理特殊字符
}
}
//放行
arg2.doFilter(arg0, arg1);

}

public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub

}

}

你可能感兴趣的:(Java过滤器过滤特殊字符)