Spring Boot 使用Filter
Spring Boot 使用Filter
Filter类
@Component
@WebFilter(urlPatterns = "/*")
@Order(Ordered.HIGHEST_PRECEDENCE) // 设置最高优先级
@Slf4j
public class GlobalFirstFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException, IOException {
HttpServletRequest httpRequest = (HttpServletRequest) request;
HttpServletResponse httpResponse = (HttpServletResponse) response;
// 会在Spring boot Security之前执行
log.info("Request URI: {}", httpRequest.getRequestURI());
// 必须调用chain.doFilter()继续处理
chain.doFilter(request, response);
}
}💡@Component 和 @ServletComponentScan 「通常放在Application类上面」不用同时使用,否则会注册两次。