博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HttpFilter
阅读量:6186 次
发布时间:2019-06-21

本文共 2166 字,大约阅读时间需要 7 分钟。

import java.io.IOException;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;import javax.servlet.http.HttpServletResponse;/** * 自定义的 HttpFilter, 实现自 Filter 接口 * */public abstract class HttpFilter implements Filter {    /**     * 用于保存 FilterConfig 对象.      */    private FilterConfig filterConfig;        /**     * 不建议子类直接覆盖. 若直接覆盖, 将可能会导致 filterConfig 成员变量初始化失败     */    @Override    public void init(FilterConfig filterConfig) throws ServletException {        this.filterConfig = filterConfig;        init();    }    /**     * 供子类继承的初始化方法. 可以通过 getFilterConfig() 获取 FilterConfig 对象.      */    protected void init() {}    /**     * 直接返回 init(ServletConfig) 的 FilterConfig 对象     */    public FilterConfig getFilterConfig() {        return filterConfig;    }        /**     * 原生的 doFilter 方法, 在方法内部把 ServletRequest 和 ServletResponse      * 转为了 HttpServletRequest 和 HttpServletResponse, 并调用了      * doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)     *      * 若编写 Filter 的过滤方法不建议直接继承该方法. 而建议继承     * doFilter(HttpServletRequest request, HttpServletResponse response,      *        FilterChain filterChain) 方法     */    @Override    public void doFilter(ServletRequest req, ServletResponse resp,            FilterChain chain) throws IOException, ServletException {        HttpServletRequest request = (HttpServletRequest) req;        HttpServletResponse response = (HttpServletResponse) resp;                doFilter(request, response, chain);    }        /**     * 抽象方法, 为 Http 请求定制. 必须实现的方法.      * @param request     * @param response     * @param filterChain     * @throws IOException     * @throws ServletException     */    public abstract void doFilter(HttpServletRequest request, HttpServletResponse response,             FilterChain filterChain) throws IOException, ServletException;    /**     * 空的 destroy 方法。      */    @Override    public void destroy() {}}

 

转载于:https://www.cnblogs.com/lusufei/p/7150494.html

你可能感兴趣的文章
基于springboot构建了一版本自动化测试框架,指定被测试环境,执行测试,支持配置化...
查看>>
聊聊dubbo的EagerThreadPool
查看>>
nginx 虚拟主机、反向代理服务器及负载均衡,多台主机分离php-fpm实验
查看>>
TiDB TechDay 巡讲启动!六城一起 High~
查看>>
利用Python进行两张图片比较
查看>>
jquery.autocomplete 模糊查询 支持分组
查看>>
找到系统盘被打满文件
查看>>
http接口测试工具,cookie自动追加
查看>>
基于OpenCv和swing的图片/视频展示Java实现
查看>>
阿里数据库内核月报:2017年03月
查看>>
SpringBoot系列——WebMvcConfigurer介绍
查看>>
monkey自动化测试(日志分析)
查看>>
sql server 2000,Log.LDF文件丢失,附加数据库失败的解决办法[转]
查看>>
Sql Server 附加指定路径的数据库文件语句
查看>>
20145237 实验一 逆向与Bof基础
查看>>
C语言第二次博客作业—分支结构
查看>>
P3349 [ZJOI2016]小星星
查看>>
CF17E Palisection(回文自动机)
查看>>
洛谷P4197 Peaks&&克鲁斯卡尔重构树学习笔记(克鲁斯卡尔重构树+主席树)
查看>>
43. Multiply Strings字符串相乘
查看>>