Spring Boot 过滤器的实现

1,988 total views, 3 views today

过滤器是 Java Servlet 规范中定义的,它能够在请求传送给 Servlet 之前,对 ServletRequest 和 ServletResponse 做检查和修改,起到了过滤的作用。

SpringBoot 中实现过滤器

Spring Boot 中的过滤器是基于 Servlet 过滤器。第一步,定义过滤器的类,该类必须继承 Filter 接口。

 

第二步,注册过滤器,这步骤有 3 种方法。

方法 1. 在配置类中实现一个 FilterRegistrationBean 对象。

 

方法 2. 使用@Component 和@Order 注解注册。

这种方法的缺点是不能再指定 UrlPatterns,默认的 URL 模式就是/*

方法 3. 使用@WebFilter 和@ServletComponentScan 注解,@WebFilter 注解是 Servlet3.0 中的注解,SpringBoot 能够支持该注解,通过@ServletComponentScan 注解,能够扫描并注册到 Servlet 容器中。

还需要@ServletComponentScan 注解

@WebFilter 方式,可以支持 UrlPatterns 的设置,但是不支持 Order 的设置。

综上所述,第 1 种方法是最灵活的,也是最常用的一种。

 

参考:https://www.concretepage.com/spring-boot/spring-boot-filter

原创文章,转载请注明出处!http://www.javathings.top/spring-boot过滤器的实现/

About: wusq


发表评论

邮箱地址不会被公开。 必填项已用*标注