过滤器

两种方式:

  1. 使用spring boot提供的FilterRegistrationBean注册Filter

  2. 使用原生servlet注解@WebFilter@Order定义Filter

两种方式的本质都是一样的,都是去FilterRegistrationBean注册自定义Filter

方式一

1. 定义filter

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 lombok.extern.slf4j.Slf4j;
@Slf4j
public class FirstFilter implements Filter {

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        // TODO Auto-generated method stub
        Filter.super.init(filterConfig);
    }

    @Override
    public void destroy() {
        // TODO Auto-generated method stub
        Filter.super.destroy();
    }

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
            throws IOException, ServletException {
        log.info("first filter doFilter===");
        chain.doFilter(request, response);

    }

}

2. 注册filter

方式二

当然也可以混合使用

Last updated

Was this helpful?