From f23efcba1bbbb84b603403711df00af138bdf3da Mon Sep 17 00:00:00 2001 From: 18582019636 <1657978663@qq.com> Date: 星期三, 26 六月 2024 17:41:15 +0800 Subject: [PATCH] feat: 代码初始化 --- ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/context/SecurityContextHolder.java | 55 ++++++++++++++++++++----------------------------------- 1 files changed, 20 insertions(+), 35 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/context/SecurityContextHolder.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/context/SecurityContextHolder.java index d7e94ec..67ae6a2 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/context/SecurityContextHolder.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/context/SecurityContextHolder.java @@ -1,98 +1,83 @@ package com.ruoyi.common.core.context; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; import com.alibaba.ttl.TransmittableThreadLocal; import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.text.Convert; import com.ruoyi.common.core.utils.StringUtils; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + /** - * 获取当前线程变量中的 用户id、用户名称、Token等信息 + * 获取当前线程变量中的 用户id、用户名称、Token等信息 * 注意: 必须在网关通过请求头的方法传入,同时在HeaderInterceptor拦截器设置值。 否则这里无法获取 * * @author ruoyi */ -public class SecurityContextHolder -{ +public class SecurityContextHolder { private static final TransmittableThreadLocal<Map<String, Object>> THREAD_LOCAL = new TransmittableThreadLocal<>(); - public static void set(String key, Object value) - { + public static void set(String key, Object value) { Map<String, Object> map = getLocalMap(); map.put(key, value == null ? StringUtils.EMPTY : value); } - public static String get(String key) - { + public static String get(String key) { Map<String, Object> map = getLocalMap(); return Convert.toStr(map.getOrDefault(key, StringUtils.EMPTY)); } - public static <T> T get(String key, Class<T> clazz) - { + public static <T> T get(String key, Class<T> clazz) { Map<String, Object> map = getLocalMap(); return StringUtils.cast(map.getOrDefault(key, null)); } - public static Map<String, Object> getLocalMap() - { + public static Map<String, Object> getLocalMap() { Map<String, Object> map = THREAD_LOCAL.get(); - if (map == null) - { + if (map == null) { map = new ConcurrentHashMap<String, Object>(); THREAD_LOCAL.set(map); } return map; } - public static void setLocalMap(Map<String, Object> threadLocalMap) - { + public static void setLocalMap(Map<String, Object> threadLocalMap) { THREAD_LOCAL.set(threadLocalMap); } - public static Long getUserId() - { + public static Long getUserId() { return Convert.toLong(get(SecurityConstants.DETAILS_USER_ID), 0L); } - public static void setUserId(String account) - { + public static void setUserId(String account) { set(SecurityConstants.DETAILS_USER_ID, account); } - public static String getUserName() - { + public static String getUserName() { return get(SecurityConstants.DETAILS_USERNAME); } - public static void setUserName(String username) - { + public static void setUserName(String username) { set(SecurityConstants.DETAILS_USERNAME, username); } - public static String getUserKey() - { + public static String getUserKey() { return get(SecurityConstants.USER_KEY); } - public static void setUserKey(String userKey) - { + public static void setUserKey(String userKey) { set(SecurityConstants.USER_KEY, userKey); } - public static String getPermission() - { + public static String getPermission() { return get(SecurityConstants.ROLE_PERMISSION); } - public static void setPermission(String permissions) - { + public static void setPermission(String permissions) { set(SecurityConstants.ROLE_PERMISSION, permissions); } - public static void remove() - { + public static void remove() { THREAD_LOCAL.remove(); } } -- Gitblit v1.7.1