diff --git a/jetcache-starter/jetcache-autoconfigure/pom.xml b/jetcache-starter/jetcache-autoconfigure/pom.xml
index 0f65532d6..0f8cb5cfe 100644
--- a/jetcache-starter/jetcache-autoconfigure/pom.xml
+++ b/jetcache-starter/jetcache-autoconfigure/pom.xml
@@ -41,10 +41,16 @@
true
+
+ org.redisson
+ redisson-spring-boot-starter
+ ${redisson.version}
+
+
org.springframework.boot
spring-boot-starter
-
\ No newline at end of file
+
diff --git a/jetcache-starter/jetcache-autoconfigure/src/main/java/com/alicp/jetcache/autoconfigure/RedissonAutoConfiguration.java b/jetcache-starter/jetcache-autoconfigure/src/main/java/com/alicp/jetcache/autoconfigure/RedissonAutoConfiguration.java
index e89db50cd..609aefb06 100644
--- a/jetcache-starter/jetcache-autoconfigure/src/main/java/com/alicp/jetcache/autoconfigure/RedissonAutoConfiguration.java
+++ b/jetcache-starter/jetcache-autoconfigure/src/main/java/com/alicp/jetcache/autoconfigure/RedissonAutoConfiguration.java
@@ -5,6 +5,8 @@
import com.alicp.jetcache.external.ExternalCacheBuilder;
import com.alicp.jetcache.redisson.RedissonCacheBuilder;
import org.redisson.api.RedissonClient;
+import org.redisson.codec.KryoCodec;
+import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
@@ -70,4 +72,9 @@ public void setApplicationContext(final ApplicationContext context) throws Beans
this.context = context;
}
}
+
+ @Bean("redissonCodecCustomizer")
+ public RedissonAutoConfigurationCustomizer redissonCodecCustomizer() {
+ return config -> config.setCodec(new KryoCodec());
+ }
}
diff --git a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/MockStarterTest.java b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/MockStarterTest.java
index 59bf83ec7..456f11b07 100644
--- a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/MockStarterTest.java
+++ b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/MockStarterTest.java
@@ -11,6 +11,7 @@
import com.alicp.jetcache.test.spring.SpringTest;
import org.junit.Assert;
import org.junit.Test;
+import org.redisson.spring.starter.RedissonAutoConfigurationV2;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Bean;
@@ -27,7 +28,7 @@
* @author huangli
*/
@Configuration
-@EnableAutoConfiguration
+@EnableAutoConfiguration(exclude = {RedissonAutoConfigurationV2.class})
@ComponentScan(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableMethodCache(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableCreateCacheAnnotation
diff --git a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisLettuceStarterTest.java b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisLettuceStarterTest.java
index b8c8e9fa4..a95c67b6a 100644
--- a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisLettuceStarterTest.java
+++ b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisLettuceStarterTest.java
@@ -4,9 +4,8 @@
import com.alicp.jetcache.anno.CreateCache;
import com.alicp.jetcache.anno.config.EnableCreateCacheAnnotation;
import com.alicp.jetcache.anno.config.EnableMethodCache;
-import com.alicp.jetcache.redis.lettuce.RedisLettuceCacheTest;
import com.alicp.jetcache.redis.lettuce.RedisLettuceCacheConfig;
-import com.alicp.jetcache.support.FastjsonKeyConvertor;
+import com.alicp.jetcache.redis.lettuce.RedisLettuceCacheTest;
import com.alicp.jetcache.test.beans.MyFactoryBean;
import com.alicp.jetcache.test.spring.SpringTest;
import io.lettuce.core.RedisClient;
@@ -20,6 +19,7 @@
import io.lettuce.core.cluster.api.sync.RedisClusterCommands;
import org.junit.Assert;
import org.junit.Test;
+import org.redisson.spring.starter.RedissonAutoConfigurationV2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
@@ -37,7 +37,7 @@
* @author huangli
*/
@Configuration
-@EnableAutoConfiguration
+@EnableAutoConfiguration(exclude = {RedissonAutoConfigurationV2.class})
@ComponentScan(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableMethodCache(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableCreateCacheAnnotation
diff --git a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisStarterTest.java b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisStarterTest.java
index 455965b27..71c898f36 100644
--- a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisStarterTest.java
+++ b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/RedisStarterTest.java
@@ -12,6 +12,7 @@
import com.alicp.jetcache.test.spring.SpringTest;
import org.junit.Assert;
import org.junit.Test;
+import org.redisson.spring.starter.RedissonAutoConfigurationV2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
@@ -35,7 +36,7 @@
* @author huangli
*/
@Configuration
-@EnableAutoConfiguration
+@EnableAutoConfiguration(exclude = RedissonAutoConfigurationV2.class)
@ComponentScan(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableMethodCache(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableCreateCacheAnnotation
diff --git a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/SpringDataRedisStarterTest.java b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/SpringDataRedisStarterTest.java
index 2a0ab54c8..6608caa4d 100644
--- a/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/SpringDataRedisStarterTest.java
+++ b/jetcache-test/src/test/java/com/alicp/jetcache/autoconfigure/SpringDataRedisStarterTest.java
@@ -8,6 +8,7 @@
import com.alicp.jetcache.test.spring.SpringTest;
import org.junit.Assert;
import org.junit.Test;
+import org.redisson.spring.starter.RedissonAutoConfigurationV2;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Bean;
@@ -26,7 +27,7 @@
* @author huangli
*/
@Configuration
-@EnableAutoConfiguration
+@EnableAutoConfiguration(exclude = RedissonAutoConfigurationV2.class)
@ComponentScan(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableMethodCache(basePackages = {"com.alicp.jetcache.test.beans", "com.alicp.jetcache.anno.inittestbeans"})
@EnableCreateCacheAnnotation
diff --git a/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonBroadcastManagerTest.java b/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonBroadcastManagerTest.java
index e46910503..25b8c4537 100644
--- a/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonBroadcastManagerTest.java
+++ b/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonBroadcastManagerTest.java
@@ -11,6 +11,7 @@
import org.junit.Test;
import org.redisson.Redisson;
import org.redisson.api.RedissonClient;
+import org.redisson.codec.KryoCodec;
import org.redisson.config.Config;
import java.util.Random;
@@ -27,6 +28,8 @@ public class RedissonBroadcastManagerTest extends AbstractBroadcastManagerTest {
public void initRedissonClient() {
final Config config = new Config();
config.useSingleServer().setAddress("redis://127.0.0.1:6379").setDatabase(0);
+ // 兼容 kryo4
+ config.setCodec(new KryoCodec());
this.client = Redisson.create(config);
}
diff --git a/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonCacheTest.java b/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonCacheTest.java
index 3692c7d78..b7caf321d 100644
--- a/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonCacheTest.java
+++ b/jetcache-test/src/test/java/com/alicp/jetcache/redisson/RedissonCacheTest.java
@@ -11,6 +11,7 @@
import org.junit.Test;
import org.redisson.Redisson;
import org.redisson.api.RedissonClient;
+import org.redisson.codec.KryoCodec;
import org.redisson.config.Config;
import java.util.Random;
@@ -27,6 +28,7 @@ public class RedissonCacheTest extends AbstractExternalCacheTest {
public void redissonTest() throws Exception {
final Config config = new Config();
config.useSingleServer().setAddress("redis://127.0.0.1:6379").setDatabase(0);
+ config.setCodec(new KryoCodec());
doTest(Redisson.create(config));
}
diff --git a/jetcache-test/src/test/java/com/alicp/jetcache/support/SyncLocalTest.java b/jetcache-test/src/test/java/com/alicp/jetcache/support/SyncLocalTest.java
index e8ed82a74..18e33af27 100644
--- a/jetcache-test/src/test/java/com/alicp/jetcache/support/SyncLocalTest.java
+++ b/jetcache-test/src/test/java/com/alicp/jetcache/support/SyncLocalTest.java
@@ -19,6 +19,7 @@
import org.junit.jupiter.api.Test;
import org.redisson.Redisson;
import org.redisson.api.RedissonClient;
+import org.redisson.codec.KryoCodec;
import org.redisson.config.Config;
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.UnifiedJedis;
@@ -78,6 +79,7 @@ public void testLettuce() throws Exception {
public void testRedisson() throws Exception {
final String keyPrefix = getClass().getSimpleName() + "testRedisson";
final Config config = new Config();
+ config.setCodec(new KryoCodec());
config.useSingleServer().setAddress("redis://127.0.0.1:6379").setDatabase(0);
RedissonClient client1 = Redisson.create(config);
RedissonClient client2 = Redisson.create(config);