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);