spring-boot filter order

 

 

1、新建Filter类,实现Filter接口。

@WebFilter(filterName = "abc", urlPatterns = "/*")
public class MyFilter1 implements Filter 

 

说明:

1、since Servlet 3.0 ,Servlet、Filter、Listener无需在web.xml中进行配置,可以通过Annotation进行配置;

2、详见:servlet3.0新特性   

 

 

 

2、在spring-boot的入口处加上注解@ServletComponentScan

扫描二维码关注公众号,回复: 229627 查看本文章

@ServletComponentScan

@SpringBootApplication

public class KkdemoApplication {

 

public static void main(String[] args) {

SpringApplication.run(KkdemoApplication.class, args);

}

}

 

说明:

@ServletComponentScan,Enables scanning for Servlet components ({WebFilter filters}, {WebServlet

 * servlets}, and {WebListener listeners})

 

关于多个filter时,执行顺序的说明:

1、多个Filter时,如果需要指定顺序执行,可以通过注解@WebFilter的filterName属性,为filter指定名称的方式间接实现,因为spring-boot中,filter的执行顺序默认是根据filterName的自然顺序执行的(如:1优先级大于2;11的优先级大于2;a的优先级大于b)。

2、经测试,Fliter类上加@Order(int seq) 注解无效(测试环境:spring-core-4.3.13.RELEASE)

 

 

 

 

 

 

 

 

 

猜你喜欢

转载自huangqiqing123.iteye.com/blog/2410669
今日推荐