mirror of
https://gitee.com/bookshelfplus/bookshelfplus
synced 2025-10-01 21:45:15 +08:00
重新引入Redis;用户登录与管理员登录完成;引入NanoID代替UUID;调整Spring Boot idea中的启动参数;swagger页面描述信息完善;更新swagger,更新Api文档
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
package plus.bookshelf.Common.SessionManager;
|
||||
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
public class RedisSessionManager implements SessionManager {
|
||||
|
||||
/**
|
||||
* 私有化构造函数
|
||||
*/
|
||||
private RedisSessionManager(RedisTemplate redisTemplate) {
|
||||
this.redisTemplate = redisTemplate;
|
||||
}
|
||||
|
||||
static SessionManager sessionManager = null;
|
||||
|
||||
/**
|
||||
* 通过此方法获取当前类的实例
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static SessionManager getInstance(RedisTemplate redisTemplate) {
|
||||
if (sessionManager == null)
|
||||
sessionManager = new RedisSessionManager(redisTemplate);
|
||||
return sessionManager;
|
||||
}
|
||||
|
||||
static RedisTemplate redisTemplate = null;
|
||||
|
||||
@Override
|
||||
public Object getValue(String key) {
|
||||
try {
|
||||
return redisTemplate.opsForValue().get(key);
|
||||
} catch (Exception e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setValue(String key, Object value) {
|
||||
redisTemplate.expire(key, 1, TimeUnit.HOURS);
|
||||
|
||||
// 建立token和用户登录态之间的联系
|
||||
redisTemplate.opsForValue().set(key, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void remove(String key) {
|
||||
redisTemplate.delete(key);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user