JAVA 特殊字符过滤器
2014-04-16 14:57
176 查看
public class SpecialCharacterFilter implements Filter { @Override public void destroy() { // TODO Auto-generated method stub } @SuppressWarnings({ "unchecked", "null" }) @Override public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest)arg0; Map map = request.getParameterMap(); //获取request里面所有请求参数。已Key-value形式返回 if(map!=null||map.size()<1){ //有参数时才处理 Set set = map.entrySet(); Iterator ite = set.iterator(); //返回迭代器 while(ite.hasNext()){ //迭代替换参数中的特殊字符 Map.Entry entry = (Entry) ite.next(); if(entry.getValue() instanceof String[]){ String[] values = (String[]) entry.getValue(); for(int i = 0 ; i < values.length ; i++){ values[i] = StringFilter(values[i]); } entry.setValue(values); //存进参数集合中 } } } arg2.doFilter(arg0, arg1); //放行 } @Override public void init(FilterConfig arg0) throws ServletException { // TODO Auto-generated method stub } public String StringFilter(String str){ String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?\"\"]"; Pattern p = Pattern.compile(regEx); Matcher m = p.matcher(str); return m.replaceAll("").trim(); } }
相关文章推荐
- java 过滤器(过滤客户端表单特殊字符、服务器端特殊字符、以及编码过滤)
- java防止页面脚本注入 特殊字符过滤器
- javaWeb超链接(href)请求-特殊字符处理
- java正则表达式,大写字母、小写字母、特殊字符、数字 两种两种以上组合匹配
- java日期格式化之特殊字符
- java 用split分割的特殊字符
- Java中的特殊字符的转义问题
- java 使用正则来过滤字符串中的特殊字符
- java中使用正则表达式匹配特殊字符串
- 【问题解决】前台AJAX请求向Java后台传时+号变为空格—其他特殊字符解析出错也可参考解决
- java正则_$等特殊字符匹配
- java中一般特殊字符转移
- 正则表达式中需要转义的特殊字符小结-java
- JAVA CMD 特殊字符的转义
- java后台对前端输入的特殊字符进行转义
- java过滤特殊字符
- java正则表达式 过滤特殊字符的正则表达式
- java正则表达式特殊字符
- 去除java代码里面的特殊字符
- java过滤特殊字符的正则表达式