Spring Security源码(六):FilterChainProxy 是如何运行的?
文章目录
- 〇、上篇回顾
- 一、关于 SpringBoot 中 Filter 加入 Servlet 容器的方式
-
- 方式一
- 方式二
- 方式三
- 方式四
- 二、核心过滤器是如何加入 Sevlet 容器的?
-
- SecurityFilterAutoConfiguration
- 类说明
- 三、运行过程
- 四、总结
- 五、系列文章
-
- Spring Security 系列
- Spring Security OAuth 系列
〇、上篇回顾
- 上篇文章学习了如何通过建造者和配置器创建出核心过滤器 springSecurityFilterChain ,但也只是个加入Bean容器的对象而已,对于如何在项目中运行起来的,要让我们创建的 Filter 有效需要将其加入 Servlet 容器,一起来看看。
一、关于 SpringBoot 中 Filter 加入 Servlet 容器的方式
> 在学习如何将核心过滤器加入 Servlet 容器之前,我们先来了解 SpringBoot 中添加 Filter 到 Servlet 容器的方式。
方式一
- 使用 @WebFilter 注解,@ServletComponentScan 所扫描的包路径必须包含该 Filter
@WebFilter(filterName = "myFilter",urlPatterns = "/*")
public class MyFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) {
}
@Override
public void destroy() {
}
}
@SpringBootApplication
@EnableAutoConfiguration
@EnableWebMvc
@ServletComponentScan(basePackages = "com.fanyin.eghm")
public class EghmApplication {
public static void main(String[] args) {
SpringApplication.run(EghmApplication.class, args);
}
}