Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring security 4-配置(AuthenticationManagerBuilder auth)在没有@Autowired的情况下工作_Java_Spring - Fatal编程技术网

Java Spring security 4-配置(AuthenticationManagerBuilder auth)在没有@Autowired的情况下工作

Java Spring security 4-配置(AuthenticationManagerBuilder auth)在没有@Autowired的情况下工作,java,spring,Java,Spring,配置Spring安全性时: @Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { @Autowired DataSource dataSource; //@Autowired protected void configure(AuthenticationManagerBuilder auth) throws Excep

配置Spring安全性时:

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Autowired
    DataSource dataSource;
    //@Autowired
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
运行时,无论是否使用@Autowired,它都可以工作。
如果AuthenticationManagerBuilder不是自动连接的,它从何而来?

调用者会自动将其注入方法中。无论如何,
@Autowiring
在方法参数中没有作用。

那里没有“注入”“配置”只是一个接受AuthenticationManagerBuilder对象的方法

您的SecurityConfig对象实现WebSecurityConfigureAdapter,并且是一个Springbean,因为它上面有注释。还可以通过注释启用安全行为。所有这些都将导致Spring寻找WebSecurityConfigureAdapter类型的bean,以便在安全设置中发挥作用。它会找到您的bean,因为它是这些对象之一。 Spring知道这种bean应该做什么,所以它只调用该bean上的适当方法

由于您重载了WebSecurity ConfigureAdapter的一个方法,因此将调用该方法的版本

@Autowired仅适用于引用bean的成员变量