深入理解 HttpSecurity【源码篇】
HttpSecurity 也是 Spring Security 中的重要一环。我们平时所做的大部分 Spring Security 配置也都是基于 HttpSecurity 来配置的。因此我们有必要从源码的角度来理解下 HttpSecurity 到底干了啥? 1.抽丝剥茧 首先我们来看下 HttpSecurity 的继承关系图: 可以看到,HttpSecurity 继承自 AbstractConfiguredSecurityBuilder,同时实现了 SecurityBuilder 和 HttpSecurityBuilder 两个接口。 我们来看下 HttpSecurity 的定义: public final class HttpSecurity extends AbstractConfiguredSecurityBuilder<defaultsecurityfilterchain, httpsecurity> implements SecurityBuilder<defaultsecurityfilterchain>, HttpSecurityBuilder<httpsecurity> { //... } 这里每一个类都带有泛型,看得人有点眼花缭乱。 我把这个泛型类拿出来和大家讲一下,小伙伴们就明白了。 泛型主要是两个,DefaultSecurityFilterChain 和