我正在学习Spring Security,如果我应该使用JdbcUserDetailsManager
或UserDetailsService
的自定义实现,我完全不懂。我正在使用数据库来存储用户。
我不明白JdbcUserDetailsManager
给你的许多方法,我不确定我想用什么?如果您有验证等怎么办?你把它包装在UserDetailsService
的自己的实现中吗?
我的意思是,你是否会通过你的申请泄漏这个经理班。创建自己的更好吗?
答案 0 :(得分:5)
存在一些差异:
UserDetailsService
是加载用户详细信息的核心界面,由DaoAuthenticationProvider
使用。UserDetailsService
有一个子接口,用于定义 CRUD 对用户抽象的操作:UserDetailsManager
JdbcDaoImpl
是UserDetailsService
。JdbcUserDetailsManager
是UserDetailsManager
的JDBC实现,是JdbcDaoImpl
的扩展。它还提供界面GroupManager
根据差异,它可能会影响您决定使用,展示,包装甚至实施的方式。