v1.10.0 版本更新, 提供会话治理接口

This commit is contained in:
shengzhang
2021-01-09 01:24:37 +08:00
parent 2328f9d654
commit f26424537f
21 changed files with 89 additions and 36 deletions

View File

@@ -7,7 +7,7 @@
<parent>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-parent</artifactId>
<version>1.9.0</version>
<version>1.10.0</version>
</parent>
<packaging>jar</packaging>
@@ -20,7 +20,7 @@
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-spring-boot-starter</artifactId>
<version>1.9.0</version>
<version>1.10.0</version>
</dependency>
<!-- RedisTemplate 相关操作API -->
<dependency>

View File

@@ -105,6 +105,17 @@ public class SaTokenDaoRedis implements SaTokenDao {
*/
@Override
public void updateTimeout(String key, long timeout) {
// 判断是否想要设置为永久
if(timeout == SaTokenDao.NEVER_EXPIRE) {
long expire = getTimeout(key);
if(expire == SaTokenDao.NEVER_EXPIRE) {
// 如果其已经被设置为永久,则不作任何处理
} else {
// 如果尚未被设置为永久那么再次set一次
this.setValue(key, this.getValue(key), timeout);
}
return;
}
stringRedisTemplate.expire(key, timeout, TimeUnit.SECONDS);
}
@@ -164,6 +175,17 @@ public class SaTokenDaoRedis implements SaTokenDao {
*/
@Override
public void updateSessionTimeout(String sessionId, long timeout) {
// 判断是否想要设置为永久
if(timeout == SaTokenDao.NEVER_EXPIRE) {
long expire = getSessionTimeout(sessionId);
if(expire == SaTokenDao.NEVER_EXPIRE) {
// 如果其已经被设置为永久,则不作任何处理
} else {
// 如果尚未被设置为永久那么再次set一次
this.saveSession(this.getSession(sessionId), timeout);
}
return;
}
sessionRedisTemplate.expire(sessionId, timeout, TimeUnit.SECONDS);
}