Spring Security and()方法

http
    .authorizeRequests()
        .anyRequest().authenticated()
        .and()
    .formLogin()
        .loginPage("/login")
        .permitAll();  

如上:
可以认为 and() 是将方法链接在一起的一种方式。and()在特定的Configurer上配置选项后,通常可以使用一种方法。例如

http
    .someConfigurer
        .>()
        .>()
        .and()
    .someOtherConfigurer
        .>()
        ...
        .and()
     ...

您会注意到,http对象上的第一级调用是配置程序

.formLogin() --> FormLoginConfigurer
.httpBasic() --> HttpBasicConfigurer()
.sessionManagement() --> SessionManagementConfigurer

配置器之后的下一层是您要调整的特定配置器的属性。例如

formLogin()
    .loginPage("/login")
    .permitAll()
    .and()

and() 在末端返回一个 builder(HttpSecurity在我们的例子)。因此,我们可以使用该**and()**方法链接其他配置器。

该方法本身来自SecurityConfigurerAdapter类。该 and() 方法ExpressionUrlAuthorizationConfigurer.ExpressionInterceptUrlRegistry又调用上述方法。

你可能感兴趣的:(Spring,Security)