过滤器是JavaWeb中比较重要的部分,以下为过滤器的配置以及方法说明
一、创建过滤器
创建过滤器要实现Filter接口,该接口位于javax.servlet包下。以下以字符编码过滤器为实现。
public class EncodingFilter implements Filter
二、过滤器三大方法
1、初始化方法
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// filterConfig可以获取在XML中配置的过滤器初始化参数
}
2、过滤方法
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
//这里以过滤字符编码为例
//这里要将其转化为HTTP类型
HttpServletRequest request = (HttpServletRequest)request;
HttpServletResponse response = (HttpServletResponse)response;
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
//这里表明传递到下一个过滤器,已经过滤完毕
chain.doFilter(request,response);
}
3、销毁方法
@Override
public void destroy() {
// 在过滤器进行销毁前执行
}
三、XML配置过滤器
在web项目的web.xml文件中进行Filter的配置。
(经过其他大神的讲解,这里要谨记一条原则:在web.xml中,监听器>过滤器>servlet。也就是说web.xml中监听器配置在过滤器之前,过滤器配置在servlet之前,否则会出错。)
EncodingFilter
com.web.filter.EncodingFilter
//这里是放置过滤器的路径
EncodingFilter
//url中是要过滤的请求路径,如果是字符编码过滤器,则是/*
觉得有用记得点赞关注哟!
备注:每一次思考都伴随着收获,也离不开和朋友们的交流,欢迎加入我们的java,python学习基地,一起交流学习,共同进步:415632341(我们也会定期分享一些学习干货)。