RedisConfig.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435
  1. package com.sf.config;
  2. import com.fasterxml.jackson.annotation.JsonAutoDetect;
  3. import com.fasterxml.jackson.annotation.JsonTypeInfo;
  4. import com.fasterxml.jackson.annotation.PropertyAccessor;
  5. import com.fasterxml.jackson.databind.ObjectMapper;
  6. import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
  7. import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
  8. import org.springframework.context.annotation.Bean;
  9. import org.springframework.context.annotation.Configuration;
  10. import org.springframework.data.redis.connection.RedisConnectionFactory;
  11. import org.springframework.data.redis.core.RedisTemplate;
  12. import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
  13. import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
  14. import org.springframework.data.redis.serializer.StringRedisSerializer;
  15. @Configuration
  16. public class RedisConfig {
  17. @Bean("redisTemplate")
  18. public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
  19. RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
  20. redisTemplate.setConnectionFactory(factory);
  21. // 序列化方式 自定义
  22. StringRedisSerializer keySerializer = new StringRedisSerializer();
  23. GenericJackson2JsonRedisSerializer valueSerializer = new GenericJackson2JsonRedisSerializer();
  24. redisTemplate.setKeySerializer(keySerializer);
  25. redisTemplate.setHashKeySerializer(keySerializer);
  26. redisTemplate.setValueSerializer(valueSerializer);
  27. redisTemplate.setHashValueSerializer(valueSerializer);
  28. return redisTemplate;
  29. }
  30. }