本质就是构造一些列过滤器,然后在请求到来时执行。
WebSecurity和HttpSecurity都是构造器。
它们俩都可以通过配置项进行配置,不过WebSecurity的配置项是从整个应用中搜集来的,而HttpSecurity是通过手动配置的,并且WebSecurity的配置项中包含HttpSecurity。
配置项的核心功能就是对它所属的构造器进行配置。
构造器的核心功能就是先收集配置项,然后再执行初始化和配置,让配置项准备好或者与自身结合,最后执行构造步骤,生成过滤器。
生成的过滤器被tomcat收走后,整个应用静静等待请求的到来。
包含关系就是,WebSecurity包含WebSecurityConfigurerAdapter,WebSecurityConfigurerAdapter包含HttpSecurity,HttpSecurity包含url、header、session、csrf、cors、oauth2、authentication、rememberMe等配置项。