From 61229e527688452c3dc67a219c6017e034ec7dd6 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 29 五月 2021 14:28:28 +0800
Subject: [PATCH] 礼金创建优化

---
 service-lijin/src/main/java/com/ks/lijin/config/RedisConfig.java |   59 ++++++++++++++++++++++++++---------------------------------
 1 files changed, 26 insertions(+), 33 deletions(-)

diff --git a/service-lijin/src/main/java/com/ks/lijin/config/RedisConfig.java b/service-lijin/src/main/java/com/ks/lijin/config/RedisConfig.java
index ad5f0ac..d109b49 100644
--- a/service-lijin/src/main/java/com/ks/lijin/config/RedisConfig.java
+++ b/service-lijin/src/main/java/com/ks/lijin/config/RedisConfig.java
@@ -1,48 +1,41 @@
 package com.ks.lijin.config;
 
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
-import redis.clients.jedis.JedisPool;
+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 {
     Logger log = LoggerFactory.getLogger(RedisConfig.class);
-
-    @Value("${redis.host}")
-    private String host;
-
-    @Value("${redis.port}")
-    private int port;
-
-    @Value("${redis.password}")
-    private String password;
-
-    @Value("${redis.timeout}")
-    private int timeout;
-
-    @Value("${redis.jedis.pool.max-wait}")
-    private int maxWait;
-
-    @Value("${redis.jedis.pool.max-idle}")
-    private int maxIdle;
-
-    @Value("${redis.jedis.pool.max-total}")
-    private int maxTotal;
-    @Value("${redis.database}")
-    private int database;
-
-
     @Bean
-    public JedisPool jedisPool() {
-        GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig();
-        poolConfig.setMaxWaitMillis(maxWait);
-        poolConfig.setMaxIdle(maxIdle);
-        poolConfig.setMaxTotal(maxTotal);
-        JedisPool pool = new JedisPool(poolConfig, host, port, timeout, password, database);
-        return pool;
+    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
+        RedisTemplate<String, Object> template = new RedisTemplate<>();
+        template.setConnectionFactory(factory);
+        Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
+        ObjectMapper om = new ObjectMapper();
+        om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
+        om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
+        jackson2JsonRedisSerializer.setObjectMapper(om);
+        StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
+        // key閲囩敤String鐨勫簭鍒楀寲鏂瑰紡
+        template.setKeySerializer(stringRedisSerializer);
+        // hash鐨刱ey涔熼噰鐢⊿tring鐨勫簭鍒楀寲鏂瑰紡
+        template.setHashKeySerializer(stringRedisSerializer);
+        // value搴忓垪鍖栨柟寮忛噰鐢╦ackson
+        template.setValueSerializer(jackson2JsonRedisSerializer);
+        // hash鐨剉alue搴忓垪鍖栨柟寮忛噰鐢╦ackson
+        template.setHashValueSerializer(jackson2JsonRedisSerializer);
+        template.afterPropertiesSet();
+        return template;
     }
 }

--
Gitblit v1.8.0