|  |  | 
 |  |  | import org.slf4j.Logger; | 
 |  |  | import org.slf4j.LoggerFactory; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.security.core.CredentialsContainer; | 
 |  |  | import org.springframework.security.core.GrantedAuthority; | 
 |  |  | import org.springframework.security.core.SpringSecurityCoreVersion; | 
 |  |  | import org.springframework.security.core.userdetails.UserDetails; | 
 |  |  | import org.springframework.security.core.userdetails.UserDetailsService; | 
 |  |  | import org.springframework.security.core.userdetails.UsernameNotFoundException; | 
 |  |  | import org.springframework.stereotype.Component; | 
 |  |  | import org.springframework.stereotype.Service; | 
 |  |  |  | 
 |  |  | import java.time.LocalDateTime; | 
 |  |  | import java.util.Collection; | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * 用户登录认证逻辑 | 
 |  |  | 
 |  |  |  | 
 |  |  |         // 查出密码 | 
 |  |  |         User user = userService.getUserByUsername(username); | 
 |  |  |         String password = SecurityUtils.encryptPassword(user.getPassword()); | 
 |  |  |         user.setPassword(password); | 
 |  |  |         if (user == null) { | 
 |  |  |             logger.info("登录用户:{} 不存在", username); | 
 |  |  |             throw new UsernameNotFoundException("登录用户:" + username + " 不存在"); | 
 |  |  |         } | 
 |  |  |         String password = SecurityUtils.encryptPassword(user.getPassword()); | 
 |  |  |         user.setPassword(password); | 
 |  |  |         return new LoginUser(user, LocalDateTime.now()); | 
 |  |  |     } | 
 |  |  |  |