diff --git a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/context/KitSpringBeanHolder.java b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/context/KitSpringBeanHolder.java index 16d4afbc..4e7f2a8d 100644 --- a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/context/KitSpringBeanHolder.java +++ b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/context/KitSpringBeanHolder.java @@ -162,7 +162,7 @@ public class KitSpringBeanHolder implements ApplicationContextAware, DisposableB * @return / */ default String getCallBackName() { - return Thread.currentThread().getId() + ":" + this.getClass().getName(); + return Thread.currentThread().threadId() + ":" + this.getClass().getName(); } } } diff --git a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/KitRedisHelper.java b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/KitRedisHelper.java index 31d47249..26f724e9 100644 --- a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/KitRedisHelper.java +++ b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/KitRedisHelper.java @@ -106,6 +106,7 @@ public class KitRedisHelper { * @param pattern key * @return / */ + @SuppressWarnings("all") public List scan(String pattern) { ScanOptions options = ScanOptions.scanOptions().match(pattern).build(); RedisConnectionFactory factory = redisTemplate.getConnectionFactory(); @@ -133,6 +134,7 @@ public class KitRedisHelper { * @param size 每页数目 * @return / */ + @SuppressWarnings("all") public List findKeysForPage(String patternKey, int page, int size) { ScanOptions options = ScanOptions.scanOptions().match(patternKey).build(); RedisConnectionFactory factory = redisTemplate.getConnectionFactory(); @@ -207,12 +209,12 @@ public class KitRedisHelper { * * @param pattern / */ + @SuppressWarnings("all") public void scanDel(String pattern) { ScanOptions options = ScanOptions.scanOptions().match(pattern).count(100).build(); try (Cursor cursor = redisTemplate.executeWithStickyConnection(connection -> { try { - return (Cursor) new ConvertingCursor<>( - connection.scan(options), redisTemplate.getKeySerializer()::deserialize); + return (Cursor) new ConvertingCursor<>(connection.scan(options), redisTemplate.getKeySerializer()::deserialize); } catch (Exception e) { throw new RuntimeException("Redis scan operation failed", e); } diff --git a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java index 788295a9..3a798da3 100644 --- a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java +++ b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java @@ -26,7 +26,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.AutoConfigureBefore; import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration; import org.springframework.cache.Cache; -import org.springframework.cache.annotation.CachingConfigurerSupport; import org.springframework.cache.annotation.EnableCaching; import org.springframework.cache.interceptor.CacheErrorHandler; import org.springframework.cache.interceptor.KeyGenerator; @@ -50,7 +49,7 @@ import java.util.Map; @Configuration @EnableCaching @AutoConfigureBefore(RedisAutoConfiguration.class) -public class RedisConfiguration extends CachingConfigurerSupport { +public class RedisConfiguration { @Autowired private AppProperties properties; @@ -103,7 +102,6 @@ public class RedisConfiguration extends CachingConfigurerSupport { * 自定义缓存key生成策略 */ @Bean - @Override public KeyGenerator keyGenerator() { return (target, method, params) -> { Map container = new HashMap<>(8); diff --git a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java index 1b758a58..c656fef5 100644 --- a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java +++ b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java @@ -22,6 +22,8 @@ package cn.odboy.framework.websocket; */ public interface KitWsBizCodeConst { - String AutomaticPush = "100"; // 主动推送 - String IM = "101"; // 实时聊天 + // 主动推送 + String AutomaticPush = "100"; + // 实时聊天 + String IM = "101"; } diff --git a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java index a29765a9..c5c259c4 100644 --- a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java +++ b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java @@ -61,6 +61,14 @@ public class KitWsServer { */ @OnMessage public void onMessage(String message, Session session) throws IOException { + if ("[{}]".equals(message)){ + try { + KitWsClientManager.removeClient(this.sid); + } catch (Exception e) { + log.error("WebSocket onClose error, sid={}", this.sid, e); + } + return; + } KitWsMessage wsMessage = JSON.parseObject(message, KitWsMessage.class); // String bizCode = wsMessage.getBizCode(); // Object data = wsMessage.getData(); diff --git a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java index 3e2132cf..6dadacc0 100644 --- a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java +++ b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/redis/RedisConfiguration.java @@ -126,6 +126,7 @@ public class RedisConfiguration extends CachingConfigurerSupport { } @Bean + @Override public CacheErrorHandler errorHandler() { return new SimpleCacheErrorHandler() { @Override diff --git a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java index 1b758a58..c656fef5 100644 --- a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java +++ b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/KitWsBizCodeConst.java @@ -22,6 +22,8 @@ package cn.odboy.framework.websocket; */ public interface KitWsBizCodeConst { - String AutomaticPush = "100"; // 主动推送 - String IM = "101"; // 实时聊天 + // 主动推送 + String AutomaticPush = "100"; + // 实时聊天 + String IM = "101"; } diff --git a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java index 8b425453..1e042ac1 100644 --- a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java +++ b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/websocket/context/KitWsServer.java @@ -66,6 +66,14 @@ public class KitWsServer { */ @OnMessage public void onMessage(String message, Session session) throws IOException { + if ("[{}]".equals(message)){ + try { + KitWsClientManager.removeClient(this.sid); + } catch (Exception e) { + log.error("WebSocket onClose error, sid={}", this.sid, e); + } + return; + } KitWsMessage wsMessage = JSON.parseObject(message, KitWsMessage.class); // String bizCode = wsMessage.getBizCode(); // Object data = wsMessage.getData();