|
@@ -1,9 +1,5 @@
|
|
|
package com.tzld.longarticle.recommend.server.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 org.apache.commons.pool2.impl.GenericObjectPoolConfig;
|
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
@@ -16,8 +12,6 @@ import org.springframework.data.redis.connection.lettuce.LettuceClientConfigurat
|
|
|
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
|
|
|
import org.springframework.data.redis.connection.lettuce.LettucePoolingClientConfiguration;
|
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
|
-import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
|
|
|
-import org.springframework.data.redis.serializer.RedisSerializer;
|
|
|
import org.springframework.data.redis.serializer.StringRedisSerializer;
|
|
|
|
|
|
@Configuration
|
|
@@ -45,7 +39,7 @@ public class RedisTemplateConfig {
|
|
|
}
|
|
|
|
|
|
@Bean(name = "redisTemplate")
|
|
|
- public RedisTemplate<String, Object> getRedisTemplate(@Qualifier("redisFactory") RedisConnectionFactory factory) {
|
|
|
+ public RedisTemplate<String, String> getRedisTemplate(@Qualifier("redisFactory") RedisConnectionFactory factory) {
|
|
|
return buildRedisTemplateByString(factory);
|
|
|
}
|
|
|
|
|
@@ -55,24 +49,15 @@ public class RedisTemplateConfig {
|
|
|
* @param factory
|
|
|
* @return
|
|
|
*/
|
|
|
- public RedisTemplate<String, Object> buildRedisTemplateByString(RedisConnectionFactory factory) {
|
|
|
- RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
|
|
|
+ public RedisTemplate<String, String> buildRedisTemplateByString(RedisConnectionFactory factory) {
|
|
|
+ RedisTemplate<String, String> redisTemplate = new RedisTemplate<>();
|
|
|
redisTemplate.setConnectionFactory(factory);
|
|
|
- redisTemplate.setValueSerializer(redisSerializer());
|
|
|
+ // key的序列化类型 保证可读性
|
|
|
redisTemplate.setKeySerializer(new StringRedisSerializer());
|
|
|
+ redisTemplate.setValueSerializer(new StringRedisSerializer());
|
|
|
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
|
|
|
- redisTemplate.setHashValueSerializer(redisSerializer());
|
|
|
- redisTemplate.afterPropertiesSet();
|
|
|
+ redisTemplate.setHashValueSerializer(new StringRedisSerializer());
|
|
|
return redisTemplate;
|
|
|
}
|
|
|
|
|
|
- public RedisSerializer<Object> redisSerializer() {
|
|
|
- //创建JSON序列化器
|
|
|
- ObjectMapper objectMapper = new ObjectMapper();
|
|
|
- objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
|
|
|
- //必须设置,否则无法序列化实体类对象
|
|
|
- objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL);
|
|
|
- return new GenericJackson2JsonRedisSerializer(objectMapper);
|
|
|
- }
|
|
|
-
|
|
|
}
|