为什么它在注入时起作用;org.springframework.security.crypto.password.PasswordEncoder“;至;DaoAuthenticationProvider";?
在为什么它在注入时起作用;org.springframework.security.crypto.password.PasswordEncoder“;至;DaoAuthenticationProvider";?,spring,spring-security,Spring,Spring Security,在“DaoAuthenticationProvider”中,“passwordEncoder”字段是“org.springframework.security.authentication.encoding.passwordEncoder” . 但是,当“org.springframework.security.crypto.password.PasswordEncoder”的实例被注入时,它为什么会工作?DaoAuthenticationProvider.setPasswordEncoder采
“DaoAuthenticationProvider”
中,“passwordEncoder”
字段是“org.springframework.security.authentication.encoding.passwordEncoder”
. 但是,当“org.springframework.security.crypto.password.PasswordEncoder”的实例被注入时,它为什么会工作?DaoAuthenticationProvider.setPasswordEncoder采用对象参数类型 在代码中,它运行instanceof检查org.springframework.security.crypto.password.PasswordEncoder,并将参数包装在org.springframework.security.authentication.encoding.PasswordEncoder的代理实现中