From a87104830fa1660035718c4721aa5862433dad7f Mon Sep 17 00:00:00 2001 From: Charles7c Date: Fri, 4 Apr 2025 17:19:52 +0800 Subject: [PATCH] build: sa-token 1.40.0 => 1.41.0 --- .../continew-starter-auth-satoken/pom.xml | 42 +++-- .../dao/SaTokenDaoConfiguration.java | 15 +- .../dao/SaTokenDaoRedisDefaultImpl.java | 147 ------------------ continew-starter-dependencies/pom.xml | 2 +- 4 files changed, 39 insertions(+), 167 deletions(-) delete mode 100644 continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoRedisDefaultImpl.java diff --git a/continew-starter-auth/continew-starter-auth-satoken/pom.xml b/continew-starter-auth/continew-starter-auth-satoken/pom.xml index e1627150..c7fac145 100644 --- a/continew-starter-auth/continew-starter-auth-satoken/pom.xml +++ b/continew-starter-auth/continew-starter-auth-satoken/pom.xml @@ -13,16 +13,10 @@ ContiNew Starter 认证模块 - SaToken - + - cn.dev33 - sa-token-spring-boot3-starter - - - - - cn.dev33 - sa-token-jwt + top.continew + continew-starter-web @@ -32,10 +26,34 @@ true - + - top.continew - continew-starter-web + cn.dev33 + sa-token-spring-boot3-starter + + + org.springframework.boot + spring-boot-starter-web + + + + + + + cn.dev33 + sa-token-jwt + + + + + cn.dev33 + sa-token-redisson + + + org.redisson + redisson + + \ No newline at end of file diff --git a/continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoConfiguration.java b/continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoConfiguration.java index 32e4ed44..490b3376 100644 --- a/continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoConfiguration.java +++ b/continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoConfiguration.java @@ -18,12 +18,13 @@ package top.continew.starter.auth.satoken.autoconfigure.dao; import cn.dev33.satoken.dao.SaTokenDao; import cn.dev33.satoken.dao.SaTokenDaoDefaultImpl; -import org.redisson.client.RedisClient; +import cn.dev33.satoken.dao.SaTokenDaoForRedisson; +import org.redisson.api.RedissonClient; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.NoSuchBeanDefinitionException; -import org.springframework.boot.autoconfigure.AutoConfigureBefore; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.AutoConfigureAfter; +import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Bean; @@ -63,8 +64,8 @@ public class SaTokenDaoConfiguration { * 自定义持久层实现-Redis(默认) */ @ConditionalOnMissingBean(SaTokenDao.class) - @ConditionalOnClass(RedisClient.class) - @AutoConfigureBefore(RedissonAutoConfiguration.class) + @ConditionalOnBean(RedissonClient.class) + @AutoConfigureAfter(RedissonAutoConfiguration.class) @ConditionalOnProperty(name = "sa-token.extension.dao.type", havingValue = "redis") public static class Redis { static { @@ -72,8 +73,8 @@ public class SaTokenDaoConfiguration { } @Bean - public SaTokenDao saTokenDao() { - return new SaTokenDaoRedisDefaultImpl(); + public SaTokenDao saTokenDao(RedissonClient redissonClient) { + return new SaTokenDaoForRedisson(redissonClient); } } diff --git a/continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoRedisDefaultImpl.java b/continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoRedisDefaultImpl.java deleted file mode 100644 index 908dfd29..00000000 --- a/continew-starter-auth/continew-starter-auth-satoken/src/main/java/top/continew/starter/auth/satoken/autoconfigure/dao/SaTokenDaoRedisDefaultImpl.java +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Copyright (c) 2022-present Charles7c Authors. All Rights Reserved. - *

- * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE 3.0; - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - *

- * http://www.gnu.org/licenses/lgpl.html - *

- * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package top.continew.starter.auth.satoken.autoconfigure.dao; - -import cn.dev33.satoken.dao.SaTokenDao; -import cn.dev33.satoken.util.SaFoxUtil; -import top.continew.starter.cache.redisson.util.RedisUtils; - -import java.time.Duration; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; - -/** - * 默认 Sa-Token 持久层 Redis 实现(参考:Sa-Token/sa-token-plugin/sa-token-dao-redisx/SaTokenDaoOfRedis.java) - * - * @author Charles7c - * @since 1.0.0 - */ -public class SaTokenDaoRedisDefaultImpl implements SaTokenDao { - - @Override - public String get(String key) { - return RedisUtils.get(key); - } - - @Override - public void set(String key, String value, long timeout) { - if (timeout == 0 || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } - // 判断是否为永不过期 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - RedisUtils.set(key, value); - } else { - RedisUtils.set(key, value, Duration.ofSeconds(timeout)); - } - } - - @Override - public void update(String key, String value) { - long expire = getTimeout(key); - // -2:无此键 - if (expire == SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } - this.set(key, value, expire); - } - - @Override - public void delete(String key) { - RedisUtils.delete(key); - } - - @Override - public long getTimeout(String key) { - long timeout = RedisUtils.getTimeToLive(key); - return timeout < 0 ? timeout : timeout / 1000; - } - - @Override - public void updateTimeout(String key, long timeout) { - // 判断是否想要设置为永久 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - long expire = getTimeout(key); - // 如果其已经被设置为永久,则不作任何处理。如果尚未被设置为永久,那么再次 set 一次 - if (expire != SaTokenDao.NEVER_EXPIRE) { - this.set(key, this.get(key), timeout); - } - return; - } - RedisUtils.expire(key, Duration.ofSeconds(timeout)); - } - - @Override - public Object getObject(String key) { - return RedisUtils.get(key); - } - - @Override - public void setObject(String key, Object object, long timeout) { - if (0 == timeout || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } - // 判断是否为永不过期 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - RedisUtils.set(key, object); - } else { - RedisUtils.set(key, object, Duration.ofSeconds(timeout)); - } - } - - @Override - public void updateObject(String key, Object object) { - long expire = getObjectTimeout(key); - // -2:无此键 - if (expire == SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } - this.setObject(key, object, expire); - } - - @Override - public void deleteObject(String key) { - RedisUtils.delete(key); - } - - @Override - public long getObjectTimeout(String key) { - return this.getTimeout(key); - } - - @Override - public void updateObjectTimeout(String key, long timeout) { - // 判断是否想要设置为永久 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - long expire = getObjectTimeout(key); - // 如果其已经被设置为永久,则不作任何处理。如果尚未被设置为永久,那么再次 set 一次 - if (expire != SaTokenDao.NEVER_EXPIRE) { - this.setObject(key, this.getObject(key), timeout); - } - return; - } - RedisUtils.expire(key, Duration.ofSeconds(timeout)); - } - - @Override - public List searchData(String prefix, String keyword, int start, int size, boolean sortType) { - Collection keys = RedisUtils.keys("%s*%s*".formatted(prefix, keyword)); - List list = new ArrayList<>(keys); - return SaFoxUtil.searchList(list, start, size, sortType); - } -} diff --git a/continew-starter-dependencies/pom.xml b/continew-starter-dependencies/pom.xml index 07e8cd4a..e3bc6656 100644 --- a/continew-starter-dependencies/pom.xml +++ b/continew-starter-dependencies/pom.xml @@ -43,7 +43,7 @@ 3.45.0 2.7.7 2.11.0 - 1.40.0 + 1.41.0 1.16.7 3.5.8 1.10.8