online-exam/src/main/java/com/zhangmeng/online/exam/utils/UserUtils.java

34 lines
1.1 KiB
Java
Raw Normal View History

2025-04-06 09:26:44 +00:00
package com.zhangmeng.online.exam.utils;
import com.zhangmeng.jwt.dto.LoginUser;
import org.springframework.security.authentication.AnonymousAuthenticationToken;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
/**
* @author zm
* @date 2025/4/6 16:21
* @version: 1.0
*/
public class UserUtils {
public static Long getCurrentUserId() {
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
LoginUser loginUser = null;
if (authentication != null) {
if (authentication instanceof AnonymousAuthenticationToken) {
return null;
}
if (authentication instanceof UsernamePasswordAuthenticationToken) {
loginUser = (LoginUser) authentication.getPrincipal();
}
}
if (loginUser != null){
return loginUser.getId();
}
return null;
}
}