diff --git a/backend/pom.xml b/backend/pom.xml
index b40ad1c7a6..3a8a62a498 100644
--- a/backend/pom.xml
+++ b/backend/pom.xml
@@ -280,6 +280,22 @@
json-path
2.4.0
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+ redis.clients
+ jedis
+
+
+
+
+
+ org.apache.commons
+ commons-pool2
+
diff --git a/backend/src/main/java/io/dataease/commons/condition/RedisStatusCondition.java b/backend/src/main/java/io/dataease/commons/condition/RedisStatusCondition.java
new file mode 100644
index 0000000000..ad23200b57
--- /dev/null
+++ b/backend/src/main/java/io/dataease/commons/condition/RedisStatusCondition.java
@@ -0,0 +1,23 @@
+package io.dataease.commons.condition;
+
+import io.dataease.commons.utils.CommonBeanFactory;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.context.annotation.Condition;
+import org.springframework.context.annotation.ConditionContext;
+import org.springframework.core.env.Environment;
+import org.springframework.core.type.AnnotatedTypeMetadata;
+
+public class RedisStatusCondition implements Condition {
+
+ private static final String DEFAULT_TYPE = "ehcache";
+ private static final String TARGET_TYPE = "redis";
+ private static final String TYPE_KEY = "spring.cache.type";
+
+ @Override
+ public boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata) {
+ Environment environment = context.getEnvironment();
+ String ehcacheType = environment.getProperty(TYPE_KEY, String.class, DEFAULT_TYPE);
+
+ return StringUtils.equals(TARGET_TYPE, ehcacheType);
+ }
+}
diff --git a/backend/src/main/java/io/dataease/config/RedisConfig.java b/backend/src/main/java/io/dataease/config/RedisConfig.java
new file mode 100644
index 0000000000..c3778545bc
--- /dev/null
+++ b/backend/src/main/java/io/dataease/config/RedisConfig.java
@@ -0,0 +1,27 @@
+package io.dataease.config;
+
+
+import io.dataease.commons.condition.RedisStatusCondition;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Conditional;
+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;
+
+
+
+@Configuration
+public class RedisConfig {
+
+ @Conditional({RedisStatusCondition.class})
+ @Bean
+ public RedisTemplate