diff --git a/im-commom/pom.xml b/im-commom/pom.xml
index 61b263c..a019f36 100644
--- a/im-commom/pom.xml
+++ b/im-commom/pom.xml
@@ -39,15 +39,9 @@
org.springframework
spring-beans
-
- org.apache.velocity
- velocity
- ${velocity.version}
-
com.fasterxml.jackson.datatype
jackson-datatype-joda
- 2.9.10
org.springframework
@@ -63,7 +57,6 @@
org.slf4j
slf4j-api
- 1.7.36
diff --git a/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQConfig.java b/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQConfig.java
index 24ba4ba..99c5074 100644
--- a/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQConfig.java
+++ b/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQConfig.java
@@ -4,7 +4,6 @@ import com.alibaba.fastjson.support.spring.FastJsonRedisSerializer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
-import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.StringRedisSerializer;
diff --git a/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQPullTask.java b/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQPullTask.java
index 7b0d4c6..cf5bf99 100644
--- a/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQPullTask.java
+++ b/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQPullTask.java
@@ -2,14 +2,18 @@ package com.bx.imcommon.mq;
import com.alibaba.fastjson.JSONObject;
import com.bx.imcommon.util.ThreadPoolExecutorFactory;
+import jakarta.annotation.PreDestroy;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;
-import javax.annotation.PreDestroy;
+
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
-import java.util.*;
+import java.util.Collections;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Objects;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
diff --git a/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQTemplate.java b/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQTemplate.java
index f966579..bf8b076 100644
--- a/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQTemplate.java
+++ b/im-commom/src/main/java/com/bx/imcommon/mq/RedisMQTemplate.java
@@ -1,6 +1,5 @@
package com.bx.imcommon.mq;
-import cn.hutool.core.util.StrUtil;
import org.apache.logging.log4j.util.Strings;
import org.springframework.data.redis.connection.RedisConnection;
import org.springframework.data.redis.core.RedisTemplate;
diff --git a/im-commom/src/main/java/com/bx/imcommon/util/ThreadPoolExecutorFactory.java b/im-commom/src/main/java/com/bx/imcommon/util/ThreadPoolExecutorFactory.java
index e2cdd6d..3cf0112 100644
--- a/im-commom/src/main/java/com/bx/imcommon/util/ThreadPoolExecutorFactory.java
+++ b/im-commom/src/main/java/com/bx/imcommon/util/ThreadPoolExecutorFactory.java
@@ -2,7 +2,8 @@ package com.bx.imcommon.util;
import lombok.extern.slf4j.Slf4j;
-import java.util.concurrent.*;
+import java.util.concurrent.ScheduledThreadPoolExecutor;
+import java.util.concurrent.ThreadPoolExecutor;
/**
* 创建单例线程池
diff --git a/im-platform/pom.xml b/im-platform/pom.xml
index 16e987c..05b2590 100644
--- a/im-platform/pom.xml
+++ b/im-platform/pom.xml
@@ -18,10 +18,6 @@
im-client
2.0.0
-
- org.springframework.boot
- spring-boot
-
org.springframework.boot
spring-boot-starter-web
@@ -29,29 +25,30 @@
com.baomidou
mybatis-plus-boot-starter
+
+
+ org.mybatis
+ mybatis-spring
+
+
+
+
+ org.mybatis
+ mybatis-spring
+ ${mybatis.spring.version}
com.alibaba
druid
- mysql
- mysql-connector-java
+ com.mysql
+ mysql-connector-j
org.springframework.boot
spring-boot-starter-jdbc
-
- io.springfox
- springfox-swagger2
- ${swagger.version}
-
-
- io.springfox
- springfox-swagger-ui
- ${swagger.version}
-
org.aspectj
aspectjweaver
@@ -62,8 +59,9 @@
spring-boot-starter-data-redis
- org.springframework.boot
- spring-boot-starter-security
+ org.springframework.security
+ spring-security-crypto
+ 6.3.1
org.springframework.session
@@ -77,27 +75,7 @@
io.minio
minio
- 8.4.3
-
-
- com.squareup.okhttp3
- okhttp
-
-
- org.jetbrains.kotlin
- kotlin-stdlib
-
-
-
-
- com.squareup.okhttp3
- okhttp
- 4.9.0
-
-
- org.jetbrains.kotlin
- kotlin-stdlib
- 1.3.70
+ ${minio.version}
@@ -112,8 +90,13 @@
org.redisson
- redisson
- 3.17.3
+ redisson-spring-boot-starter
+ ${redisson.version}
+
+
+ com.github.xiaoymin
+ knife4j-openapi3-jakarta-spring-boot-starter
+ ${knife4j.version}
@@ -123,7 +106,7 @@
org.springframework.boot
spring-boot-maven-plugin
- 2.0.3.RELEASE
+ 3.3.1
diff --git a/im-platform/src/main/java/com/bx/implatform/IMPlatformApp.java b/im-platform/src/main/java/com/bx/implatform/IMPlatformApp.java
index ecb30a4..73dab5d 100644
--- a/im-platform/src/main/java/com/bx/implatform/IMPlatformApp.java
+++ b/im-platform/src/main/java/com/bx/implatform/IMPlatformApp.java
@@ -4,7 +4,6 @@ import lombok.extern.slf4j.Slf4j;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
@@ -14,7 +13,7 @@ import org.springframework.context.annotation.EnableAspectJAutoProxy;
@EnableAspectJAutoProxy(exposeProxy = true)
@ComponentScan(basePackages = {"com.bx"})
@MapperScan(basePackages = {"com.bx.implatform.mapper"})
-@SpringBootApplication(exclude = {SecurityAutoConfiguration.class})// 禁用secrity
+@SpringBootApplication
public class IMPlatformApp {
public static void main(String[] args) {
diff --git a/im-platform/src/main/java/com/bx/implatform/annotation/OnlineCheck.java b/im-platform/src/main/java/com/bx/implatform/annotation/OnlineCheck.java
index f616002..4baec54 100644
--- a/im-platform/src/main/java/com/bx/implatform/annotation/OnlineCheck.java
+++ b/im-platform/src/main/java/com/bx/implatform/annotation/OnlineCheck.java
@@ -4,7 +4,6 @@ import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
-import java.util.concurrent.TimeUnit;
/**
* 在线校验,标注此注解的接口用户必须保持长连接,否则将抛异常
diff --git a/im-platform/src/main/java/com/bx/implatform/aspect/OnlineCheckAspect.java b/im-platform/src/main/java/com/bx/implatform/aspect/OnlineCheckAspect.java
index b81124c..a9be97e 100644
--- a/im-platform/src/main/java/com/bx/implatform/aspect/OnlineCheckAspect.java
+++ b/im-platform/src/main/java/com/bx/implatform/aspect/OnlineCheckAspect.java
@@ -1,8 +1,6 @@
package com.bx.implatform.aspect;
-import cn.hutool.core.util.StrUtil;
import com.bx.imclient.IMClient;
-import com.bx.implatform.annotation.RedisLock;
import com.bx.implatform.exception.GlobalException;
import com.bx.implatform.session.SessionContext;
import com.bx.implatform.session.UserSession;
@@ -11,13 +9,8 @@ import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
-import org.aspectj.lang.reflect.MethodSignature;
-import org.redisson.api.RLock;
-import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
-import java.lang.reflect.Method;
-
/**
* @author: blue
* @date: 2024-06-16
diff --git a/im-platform/src/main/java/com/bx/implatform/aspect/RedisLockAspect.java b/im-platform/src/main/java/com/bx/implatform/aspect/RedisLockAspect.java
index 0cd5586..dc5c6b5 100644
--- a/im-platform/src/main/java/com/bx/implatform/aspect/RedisLockAspect.java
+++ b/im-platform/src/main/java/com/bx/implatform/aspect/RedisLockAspect.java
@@ -8,8 +8,6 @@ import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.reflect.MethodSignature;
-import org.redisson.Redisson;
-import org.redisson.RedissonLock;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.springframework.core.DefaultParameterNameDiscoverer;
diff --git a/im-platform/src/main/java/com/bx/implatform/config/RedisConfig.java b/im-platform/src/main/java/com/bx/implatform/config/RedisConfig.java
index 14922b0..d74e656 100644
--- a/im-platform/src/main/java/com/bx/implatform/config/RedisConfig.java
+++ b/im-platform/src/main/java/com/bx/implatform/config/RedisConfig.java
@@ -1,18 +1,17 @@
package com.bx.implatform.config;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
+import jakarta.annotation.Resource;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.CachingConfigurerSupport;
import org.springframework.cache.annotation.EnableCaching;
-import org.springframework.cache.interceptor.CacheErrorHandler;
-import org.springframework.cache.interceptor.CacheResolver;
-import org.springframework.cache.interceptor.SimpleCacheErrorHandler;
-import org.springframework.cache.interceptor.SimpleCacheResolver;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
@@ -24,9 +23,7 @@ import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializationContext;
import org.springframework.data.redis.serializer.StringRedisSerializer;
-import javax.annotation.Resource;
import java.time.Duration;
-import java.util.Objects;
@EnableCaching
@Configuration
@@ -40,7 +37,6 @@ public class RedisConfig extends CachingConfigurerSupport {
public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
-
// 设置值(value)的序列化采用jackson2JsonRedisSerializer
redisTemplate.setValueSerializer(jackson2JsonRedisSerializer());
redisTemplate.setHashValueSerializer(jackson2JsonRedisSerializer());
@@ -51,42 +47,28 @@ public class RedisConfig extends CachingConfigurerSupport {
return redisTemplate;
}
+
+
+ @Bean
+ public CacheManager cacheManager() {
+ // 设置redis缓存管理器
+ RedisCacheConfiguration cacheConfiguration = RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofSeconds(600))
+ .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(jackson2JsonRedisSerializer()));
+ return RedisCacheManager.builder(factory).cacheDefaults(cacheConfiguration).build();
+ }
+
+
@Bean
public Jackson2JsonRedisSerializer
-
- org.springframework.boot
- spring-boot
-
io.netty
netty-all
@@ -40,7 +36,7 @@
org.springframework.boot
spring-boot-maven-plugin
- 2.0.3.RELEASE
+ 3.3.1
diff --git a/im-server/src/main/java/com/bx/imserver/config/RedisConfig.java b/im-server/src/main/java/com/bx/imserver/config/RedisConfig.java
deleted file mode 100644
index 844cdf5..0000000
--- a/im-server/src/main/java/com/bx/imserver/config/RedisConfig.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.bx.imserver.config;
-
-import com.alibaba.fastjson.support.spring.FastJsonRedisSerializer;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.data.redis.connection.RedisConnectionFactory;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.data.redis.serializer.StringRedisSerializer;
-
-@Configuration
-public class RedisConfig {
-
- @Bean
- public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory) {
- RedisTemplate redisTemplate = new RedisTemplate<>();
- redisTemplate.setConnectionFactory(redisConnectionFactory);
- // 设置值(value)的序列化采用FastJsonRedisSerializer
- redisTemplate.setValueSerializer(fastJsonRedisSerializer());
- redisTemplate.setHashValueSerializer(fastJsonRedisSerializer());
- // 设置键(key)的序列化采用StringRedisSerializer。
- redisTemplate.setKeySerializer(new StringRedisSerializer());
- redisTemplate.setHashKeySerializer(new StringRedisSerializer());
- redisTemplate.afterPropertiesSet();
- return redisTemplate;
- }
-
-
- public FastJsonRedisSerializer fastJsonRedisSerializer() {
- return new FastJsonRedisSerializer<>(Object.class);
- }
-
-
-}
diff --git a/im-server/src/main/java/com/bx/imserver/netty/IMServerGroup.java b/im-server/src/main/java/com/bx/imserver/netty/IMServerGroup.java
index c498fd1..1498d18 100644
--- a/im-server/src/main/java/com/bx/imserver/netty/IMServerGroup.java
+++ b/im-server/src/main/java/com/bx/imserver/netty/IMServerGroup.java
@@ -1,13 +1,13 @@
package com.bx.imserver.netty;
import com.bx.imcommon.contant.IMRedisKey;
+import jakarta.annotation.PreDestroy;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.CommandLineRunner;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
-import javax.annotation.PreDestroy;
import java.util.List;
@Slf4j
@@ -17,7 +17,7 @@ public class IMServerGroup implements CommandLineRunner {
public static volatile long serverId = 0;
- RedisTemplate redisTemplate;
+ private final RedisTemplate redisTemplate;
private final List imServers;
@@ -36,7 +36,7 @@ public class IMServerGroup implements CommandLineRunner {
}
@Override
- public void run(String... args) throws Exception {
+ public void run(String... args) {
// 初始化SERVER_ID
String key = IMRedisKey.IM_MAX_SERVER_ID;
serverId = redisTemplate.opsForValue().increment(key, 1);
diff --git a/pom.xml b/pom.xml
index c3202b5..f5511d8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,6 +8,11 @@
com.bx
pom
2.0.0
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 3.3.1
+
im-platform
@@ -17,34 +22,24 @@
- 1.8
- 1.8
- 1.8
UTF-8
UTF-8
- 1.8
- 3.4.0
- 1.2.40
- 1.7
- 2.7.0
- 5.8.16
+ 17
+ 3.5.7
+ 1.2.83
+ 4.5.0
+ 5.8.28
1.1.22
+ 8.5.1
+ 3.21.3
3.8.1
- 1.18.16
- 5.1.46
+ 1.18.32
+ 3.0.3
-
-
- org.springframework.boot
- spring-boot-dependencies
- 2.7.17
- pom
- import
-
org.projectlombok
lombok
@@ -70,31 +65,11 @@
druid
${druid.version}
-
- org.apache.velocity
- velocity
- ${velocity.version}
-
-
- io.springfox
- springfox-swagger2
- ${swagger.version}
-
-
- io.springfox
- springfox-swagger-ui
- ${swagger.version}
-
cn.hutool
hutool-all
${hutool.version}
-
- mysql
- mysql-connector-java
- ${mysql.version}
-
org.apache.poi
poi-ooxml