From 5a6ae48bcda6947624849c5043a4a49a3f98b4b0 Mon Sep 17 00:00:00 2001 From: hxr <1490493387@qq.com> Date: Mon, 24 Jun 2024 00:46:18 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E8=8E=B7=E5=8F=96=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E8=AE=A4=E8=AF=81=E4=BF=A1=E6=81=AF=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E6=97=A5=E5=BF=97=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/SysUserDetailsService.java | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/youlai/system/security/service/SysUserDetailsService.java b/src/main/java/com/youlai/system/security/service/SysUserDetailsService.java index c70e8b2a..f5bf11ac 100644 --- a/src/main/java/com/youlai/system/security/service/SysUserDetailsService.java +++ b/src/main/java/com/youlai/system/security/service/SysUserDetailsService.java @@ -4,6 +4,7 @@ import com.youlai.system.security.model.SysUserDetails; import com.youlai.system.model.dto.UserAuthInfo; import com.youlai.system.service.SysUserService; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; @@ -16,17 +17,32 @@ import org.springframework.stereotype.Service; */ @Service @RequiredArgsConstructor +@Slf4j public class SysUserDetailsService implements UserDetailsService { private final SysUserService sysUserService; + /** + * 根据用户名获取用户信息 + * + * @param username 用户名 + * @return 用户信息 + * @throws UsernameNotFoundException 用户名未找到异常 + */ @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { - - UserAuthInfo userAuthInfo = sysUserService.getUserAuthInfo(username); - if (userAuthInfo == null) { - throw new UsernameNotFoundException(username); + try { + UserAuthInfo userAuthInfo = sysUserService.getUserAuthInfo(username); + if (userAuthInfo == null) { + throw new UsernameNotFoundException(username); + } + return new SysUserDetails(userAuthInfo); + } catch (Exception e) { + e.printStackTrace(); + // 记录异常日志 + log.error("认证异常:{}", e.getMessage()); + // 抛出异常 + throw e; } - return new SysUserDetails(userAuthInfo); } }