From b74593537345ed1299146c6b945a0c08a0ca2802 Mon Sep 17 00:00:00 2001 From: Administrator <2451398092@qq.com> Date: Sun, 6 Feb 2022 15:11:31 +0800 Subject: [PATCH] =?UTF-8?q?redis=E7=B7=A9=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 13 ++++++- .../java/com/adhere/configs/RedisConfig.java | 37 +++++++++++++++++++ 2 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/adhere/configs/RedisConfig.java diff --git a/pom.xml b/pom.xml index 0168e7f..e7c443e 100644 --- a/pom.xml +++ b/pom.xml @@ -81,8 +81,17 @@ spring-boot-devtools - - + + + org.springframework.boot + spring-boot-starter-data-redis + + + + + + + diff --git a/src/main/java/com/adhere/configs/RedisConfig.java b/src/main/java/com/adhere/configs/RedisConfig.java new file mode 100644 index 0000000..8870e6d --- /dev/null +++ b/src/main/java/com/adhere/configs/RedisConfig.java @@ -0,0 +1,37 @@ +package com.adhere.configs; + +import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.PropertyAccessor; +import com.fasterxml.jackson.databind.ObjectMapper; +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 redisTemplate = new RedisTemplate(); + redisTemplate.setConnectionFactory(factory); + //key String序列化配置 + StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); + redisTemplate.setKeySerializer(stringRedisSerializer); + redisTemplate.setHashKeySerializer(stringRedisSerializer); + + //value Json序列化配置 + Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class); + //如果不设置的话,redisTemplate获取对象的时候就会报错 + ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); + objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL); + jackson2JsonRedisSerializer.setObjectMapper(objectMapper); + redisTemplate.setValueSerializer(jackson2JsonRedisSerializer); + redisTemplate.setHashValueSerializer(jackson2JsonRedisSerializer); + + return redisTemplate; + } +} -- Gitee