Java AuthenticationProvider和AbstractUserDetailsAuthenticationProvider之间的区别

Java AuthenticationProvider和AbstractUserDetailsAuthenticationProvider之间的区别,java,spring,security,Java,Spring,Security,有谁能帮我解释一下我们应该在哪里使用AuthenticationProvider以及应该在哪里使用AbstractUserDetails的场景/用例吗身份验证ProviderAuthenticationProvider就是界面AbstractUserDetailsAuthenticationProvider是用于处理UsernamePaswordAuthenticationToken实例的基类,这是一种常见的用例。不能实例化抽象类的实例。抽象类就是这么抽象的。AuthenticationProv

有谁能帮我解释一下我们应该在哪里使用
AuthenticationProvider
以及应该在哪里使用
AbstractUserDetails的场景/用例吗身份验证Provider
AuthenticationProvider
就是界面
AbstractUserDetailsAuthenticationProvider
是用于处理
UsernamePaswordAuthenticationToken
实例的基类,这是一种常见的用例。

不能实例化抽象类的实例。抽象类就是这么抽象的。AuthenticationProvider是AbstractUserDetailsAuthenticationProvider实现的接口

您最可能要找的课程是-

有关Java中接口和抽象类的更多信息,请查看-

AbstractUserDetailsAuthenticationProvider是一个抽象类,实现AuthenticationProvider。因此,它已经提供了许多开箱即用的功能,您必须自己实现AuthenticationProvider的功能

当您有一个包含用户信息的存储库时,抽象类很有趣,然后它允许您从这个类获取这些信息。另一方面,假设您需要与此非常不同的东西,以及非常不同的逻辑,而不是您需要实现AuthenticationProvider

你可以在这里找到javadocs和