You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
1016 B

7 months ago
package com.dsideal.sso.Util;
7 months ago
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.redis.Redis;
7 months ago
import java.util.List;
7 months ago
import java.util.Map;
public class SsoLoginStore {
public static Map<Object, Object> get(String sessionId) {
String redisKey = redisKey(sessionId);
var x = Redis.use().hmget(redisKey);
if (x != null) {
var q = (Map<Object, Object>) x;
q.put("session_id", sessionId);
return q;
}
return null;
}
public static void put(String sessionId, Map<String, String> loginMap) {
String redisKey = redisKey(sessionId);
Redis.use().call(redis -> (redis.hmset(redisKey, loginMap)));
}
public static void remove(String sessionId) {
String redisKey = redisKey(sessionId);
Redis.use().del(redisKey);
}
private static String redisKey(String sessionId) {
return PropKit.get("sso.sessionid").concat("#").concat(sessionId);
}
}