设计三个相同的Filter,组成一个Filter Chain,作用在一个控制器类的方法上,主要演示Filter的定义、Filter Chain的执行顺序。
1、定义第一个Filter
package com.space.aspect.filter;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
/**
* @package com.space.aspect.filter
* @file AuthenticationFilter1.java
* @description
* @author spring
* @time 2020/5/19 20:19
* @version 1.0
*/
@Component
@WebFilter(urlPatterns ="/*")
@Order(3)
public class AuthenticationFilter1 implements Filter {
@Override
public void init(FilterConfig filterConfig) {
System.out.println("init my AuthenticationFilter1/only once");
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
throws IOException, ServletException {
System.out.println("