edu/server/like-admin/src/main/java/com/hxkj/admin/LikeAdminThreadLocal.java

70 lines
1.4 KiB
Java
Raw Normal View History

2022-03-29 10:54:41 +00:00
package com.hxkj.admin;
import java.util.LinkedHashMap;
2022-03-30 06:58:31 +00:00
/**
* 本地线程
*/
2022-03-29 10:54:41 +00:00
public class LikeAdminThreadLocal {
/**
* 构造方法
*/
public LikeAdminThreadLocal() {}
/**
* 取得本地线程对象
*/
private static final java.lang.ThreadLocal<LinkedHashMap<String, Object>> MY_LOCAL = new java.lang.ThreadLocal<>();
/**
* 写入本地线程
*/
2022-03-30 06:58:31 +00:00
public static void put(String key, Object val) {
2022-03-29 10:54:41 +00:00
LinkedHashMap<String, Object> map = MY_LOCAL.get();
2022-03-30 06:58:31 +00:00
if (map == null) {
map = new LinkedHashMap<>();
}
2022-03-29 10:54:41 +00:00
map.put(key, val);
MY_LOCAL.set(map);
}
/**
* 获取本地线程
*/
public static Object get(String key) {
return MY_LOCAL.get().getOrDefault(key, "");
}
/**
* 获取管理员ID
*/
public static Integer getAdminId() {
String adminId = LikeAdminThreadLocal.get("adminId").toString();
if (adminId.equals("")) {
return 0;
}
return Integer.parseInt(adminId);
}
2022-03-30 06:58:31 +00:00
/**
* 获取角色ID
*/
public static Integer getRoleId() {
String roleId = LikeAdminThreadLocal.get("roleId").toString();
if (roleId.equals("")) {
return 0;
}
return Integer.parseInt(roleId);
}
2022-03-29 10:54:41 +00:00
/**
* 删除本地线程
*/
public static void remove() {
MY_LOCAL.remove();
}
}