From 5a4b4721268a8d5af866c8dd37e83f60a2f53226 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=B0=8F=E6=9D=8E?= <1040978436@qq.com>
Date: Thu, 8 Jan 2026 16:16:29 +0800
Subject: [PATCH] =?UTF-8?q?update=20redis=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
common/common-redis/pom.xml | 62 +++
.../common/redis/config/RedisConfig.java | 49 +++
.../tacit/common/redis/utils/RedisUtils.java | 404 ++++++++++++++++++
.../main/resources/META-INF/spring.factories | 2 +
4 files changed, 517 insertions(+)
create mode 100644 common/common-redis/pom.xml
create mode 100644 common/common-redis/src/main/java/com/tacit/common/redis/config/RedisConfig.java
create mode 100644 common/common-redis/src/main/java/com/tacit/common/redis/utils/RedisUtils.java
create mode 100644 common/common-redis/src/main/resources/META-INF/spring.factories
diff --git a/common/common-redis/pom.xml b/common/common-redis/pom.xml
new file mode 100644
index 0000000..cd90fa7
--- /dev/null
+++ b/common/common-redis/pom.xml
@@ -0,0 +1,62 @@
+
+
+
+ common
+ com.tacit
+ 1.0.0-SNAPSHOT
+ ../pom.xml
+
+ 4.0.0
+
+ common-redis
+ Common Redis
+ Redis service module for common usage
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+
+
+ redis.clients
+ jedis
+
+
+
+
+ com.tacit
+ common-model
+ ${project.version}
+
+
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+
+
+ com.fasterxml.jackson.datatype
+ jackson-datatype-jsr310
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.11.0
+
+ ${java.version}
+ ${java.version}
+ UTF-8
+
+
+
+
+
diff --git a/common/common-redis/src/main/java/com/tacit/common/redis/config/RedisConfig.java b/common/common-redis/src/main/java/com/tacit/common/redis/config/RedisConfig.java
new file mode 100644
index 0000000..23fc2d9
--- /dev/null
+++ b/common/common-redis/src/main/java/com/tacit/common/redis/config/RedisConfig.java
@@ -0,0 +1,49 @@
+package com.tacit.common.redis.config;
+
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
+import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
+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.Jackson2JsonRedisSerializer;
+import org.springframework.data.redis.serializer.StringRedisSerializer;
+
+@Configuration
+public class RedisConfig {
+
+ @Bean
+ public RedisTemplate redisTemplate(RedisConnectionFactory factory) {
+ RedisTemplate template = new RedisTemplate<>();
+ template.setConnectionFactory(factory);
+
+ // key 使用 String 序列化
+ template.setKeySerializer(new StringRedisSerializer());
+ template.setHashKeySerializer(new StringRedisSerializer());
+
+ // value 使用 JSON 序列化
+ Jackson2JsonRedisSerializer