SpringMVC 过滤参数的非法字符
来源:互联网 发布:淘宝隐藏优惠卷 编辑:程序博客网 时间:2024/05/21 19:49
import java.io.IOException;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.filter.OncePerRequestFilter;
/**
*
* @desc:特殊字符过滤
*/
public class CharacterFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
// TODO Auto-generated method stub
filterChain.doFilter(new HttpServletRequestWrapper(request) {
@Override
public String getParameter(String name) {
// 返回值之前 先进行过滤
return filterDangerString(super.getParameter(name));
}
@Override
public String[] getParameterValues(String name) {
// 返回值之前 先进行过滤
String[] values = super.getParameterValues(name);
if (values != null) {
for (int i = 0; i < values.length; i++) {
values[i] = filterDangerString(values[i]);
}
}
return values;
}
}, response);
}
public String filterDangerString(String value) {
if (value == null) {
return null;
return value;
}
}
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.filter.OncePerRequestFilter;
/**
*
* @desc:特殊字符过滤
*/
public class CharacterFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
// TODO Auto-generated method stub
filterChain.doFilter(new HttpServletRequestWrapper(request) {
@Override
public String getParameter(String name) {
// 返回值之前 先进行过滤
return filterDangerString(super.getParameter(name));
}
@Override
public String[] getParameterValues(String name) {
// 返回值之前 先进行过滤
String[] values = super.getParameterValues(name);
if (values != null) {
for (int i = 0; i < values.length; i++) {
values[i] = filterDangerString(values[i]);
}
}
return values;
}
}, response);
}
public String filterDangerString(String value) {
if (value == null) {
return null;
}
//根据自己实际需求过滤
//value = value.replaceAll("%", "$");return value;
}
}
1 0
- SpringMVC 过滤参数的非法字符
- 非法字符空字符的过滤
- cnkbbs被过滤的非法字符
- 过滤非法字符的简单方法
- js的正则表达式过滤非法字符
- 过滤非法字符 一
- 过滤非法字符 二
- 过滤非法字符 三
- asp过滤非法字符
- Filter过滤非法字符
- 过滤非法字符
- 过滤非法字符
- 过滤非法字符问题
- 过滤非法字符
- java过滤非法字符
- 过滤xml非法字符
- 过滤非法字符
- servlet过滤非法字符
- 关于machinelearning第二周的作业详细解析
- 【CSS3】-伸缩布局盒模型实现 3列等高布局
- php保存文件
- plsql远程访问数据库 解决ora-12541:TNS:无监听程序
- 05-树7 堆中的路径 (25分)
- SpringMVC 过滤参数的非法字符
- 多数据源的配置
- 【9】-互联网公司技术型面试需要的素质
- 18. 4Sum
- android toast自定义显示时间
- OpenSSH ARM移植
- 欢迎使用CSDN-markdown编辑器
- 常见Sort排序算法总结,人生第一帖
- Log4j调试