java中的过滤器:Filter

  1. 创建: 实现Filter接口

    /**
     * @author yinfeng
     * @description 跨域解决
     * @since 2021/10/1 17:53
     */
    public class CrossFilter implements Filter {
    
        @Override
        public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
            HttpServletResponse response = (HttpServletResponse) servletResponse;
            HttpServletRequest request = (HttpServletRequest) servletRequest;
            response.setHeader("Access-Control-Allow-Origin", "*");
            response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, HEAD");
            response.setHeader("Access-Control-Max-Age", "3600");
            response.setHeader("Access-Control-Allow-Headers", "access-control-allow-origin," +
                    " authority, content-type, version-info, X-Requested-With,token");
            response.setHeader("Content-Type", "application/json; charset=utf-8");
            response.setCharacterEncoding("utf-8");
            filterChain.doFilter(request, response);
        }
    
    }
    
    
  2. 生命周期

    1. 构建Filter对象
    2. 初始化:初始化init方法调用
    3. 开始过滤:doFilter
    4. 销毁:销毁方法destroy方法调用
posted @ 2022-02-21 22:16  隐风  阅读(64)  评论(0)    收藏  举报