調用 HttpSecurity 的 build() 方法可以返回一個 SecurityFilterChain 實例。
繼承關系圖
HttpSecurity 的 build() 方法在頂層接口 SecurityBuilder 中定義的。
調用關系圖
1. AbstractSecurityBuilder 實現了 SecurityBuilder 的 build() 方法,在其方法體內 build() 調用了 doBuild() 方法
2. AbstractConfiguredSecurityBuilder 中的 boBuild() 方法調用了 performBuild() 方法
3. 在 HttpSecurity 中的 performBuild() 方法中通過 new 關鍵字實例化了 DefaultSecurityFilterChain,這里的 DefaultSecurityFilterChain 是 SecurityFilterChain 的唯一實現類。至此 httpSecurity.build() 方法就返回了一個 SecurityFilterChain 實例。
以上就是 httpSecurity.build() 方法執行概況。