Leo灬叔叔
2012-11-27 22:42
浏览 1.1k
已采纳

spring security 自定义UserDetailsService问题

在自定义UserDetailsService时我继承了JdbcDaoImpl,并重写了loadUserByUsername()方法在方法体中:
[code="java"]
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException, DataAccessException {
UserDetails ud = super.loadUserByUsername(username);
AuthUserDetails authUser = new AuthUserDetails(ud.getUsername(),ud.getPassword(),ud.isEnabled(),ud.isAccountNonExpired(),
ud.isCredentialsNonExpired(),ud.isAccountNonLocked(),ud.getAuthorities());
}
[/code]
调用了父类的loadUserByUsername()方法,是不是就是走了父类中的sql:
[code="java"]
public static final String DEF_USERS_BY_USERNAME_QUERY =
"SELECT username,password,enabled " +
"FROM users " +
"WHERE username = ?";
[/code]
这样我是不是就得建users表?
我感觉这个我能通过自己自定义应该可以重写一下吧?
求ss大牛...

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • iteye_5246 2012-11-28 12:48
    已采纳

    还要修改一个地方,就是JdbcUserDetailsManager中执行这个sql的部分。建议增加一个类,继承JdbcUserDetailsManager,覆盖loadUsersByUsername方法。

    评论
    解决 无用
    打赏 举报
查看更多回答(3条)

相关推荐 更多相似问题