一、新建过滤器
首先要新建一个过滤器,通过注解完成Filter配置
// 通过注解完成Filter配置,/*表示过滤所有请求
@WebFilter("/*")
现在所有的页面都被过滤掉了,全部不能进行正常的请求,我们只需在doFilter()方法中写上
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException{
chain.doFilter(request, response);//继续执行,表示请求继续执行
}
二、进行操作
接下来我们就可以在doFilter()方法里面进行统一编码和过滤非法文字(注意:这里的非法文字指的是参数中的非法文字)
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException{
System.out.println("过滤");
request.setCharacterEncoding("utf-8");//设置统一编码
//对所有的参数进行非法文字的过滤
Enumeration<String> en = request.getParameterNames();
while(en.hasMoreElements()) {
String paramName = en.nextElement();
String paramValue = request.getParameter(paramName).toString();
if(paramValue.indexOf("去你丫的")!= -1) {
System.out.println("不能传递脏话");
return;
}
}
chain.doFilter(request, response);//继续执行,表示请求继续执行
}
本文详细介绍了如何在Java Web应用中配置过滤器,并演示了如何使用过滤器进行统一编码设置及非法文字过滤,确保应用程序的安全性和用户体验。
917

被折叠的 条评论
为什么被折叠?



