作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在学习 Spring Security,但我不完全理解是应该使用 JdbcUserDetailsManager
还是 UserDetailsService
的自定义实现。我正在使用数据库来存储用户。
除了很多方法之外,我不明白 JdbcUserDetailsManager
给你什么,我不确定我想使用这些方法吗?如果你有验证等怎么办?您是否将其包装在自己的 UserDetailsService
实现中?
我的意思是,您会在整个应用程序中泄露这个管理器类吗?自己创建更好吗?
最佳答案
有一些区别:
UserDetailsService
是加载用户详细信息的核心接口(interface),由 DaoAuthenticationProvider
使用。 .UserDetailsService
有一个子接口(interface),定义了对用户抽象的CRUD 操作:UserDetailsManager
JdbcDaoImpl
是 UserDetailsService
的 JDBC 实现。JdbcUserDetailsManager
是UserDetailsManager
的JDBC 实现,是JdbcDaoImpl
的扩展。它还提供接口(interface) GroupManager
基于差异,它可能会影响您决定使用、公开、包装甚至实现的方式。
关于java - 使用 JdbcUserDetailsManager 与自己的 UserDetailsService,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16319037/
我是一名优秀的程序员,十分优秀!