java.lang.IllegalArgumentException: There is no PasswordEncoder mapped for the id “null”
初学spring security,使用简单的入门案例遇到这个错,是因为密码加密的原因。
在获取密码是拼接上"{noop}" ,像这个样子"{noop}"+userInfo.getPassword(),可以暂时解决这个问题
@Service(“userService”)
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
//数据可以查用户信息
UserInfo userInfo = userDao.findByUsername(username);
//借助getAuthority方法获得用户权限
List<SimpleGrantedAuthority> authority = getAuthority(userInfo.getRoles());
System.out.println(authority);
User user = new User(userInfo.getUsername(),"{noop}"+userInfo.getPassword(),
userInfo.getStatus()==0?false:true,
true,true,true,
getAuthority(userInfo.getRoles()));
return user;
}