CustomRedisConfig.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package com.ozs.service.utils;
  2. import com.ozs.service.entity.vo.BaseCameraVO;
  3. import org.springframework.context.annotation.Bean;
  4. import org.springframework.context.annotation.Configuration;
  5. import org.springframework.data.redis.connection.RedisConnectionFactory;
  6. import org.springframework.data.redis.core.RedisTemplate;
  7. import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
  8. import org.springframework.data.redis.serializer.StringRedisSerializer;
  9. /**
  10. * @author wyy
  11. * @subject
  12. * @creat 2024/3/7
  13. */
  14. @Configuration
  15. public class CustomRedisConfig {
  16. @Bean
  17. @SuppressWarnings("all")
  18. public RedisTemplate<String, BaseCameraVO> myObjectRedisTemplate(RedisConnectionFactory redisConnectionFactory) {
  19. RedisTemplate<String, BaseCameraVO> template = new RedisTemplate<String, BaseCameraVO>();
  20. template.setConnectionFactory(redisConnectionFactory);
  21. Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(BaseCameraVO.class);
  22. StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
  23. // key采用String的序列化方式
  24. template.setKeySerializer(stringRedisSerializer);
  25. // hash的key也采用String的序列化方式
  26. template.setHashKeySerializer(stringRedisSerializer);
  27. // value序列化方式采用jackson
  28. template.setValueSerializer(jackson2JsonRedisSerializer);
  29. // hash的value序列化方式采用jackson
  30. template.setHashValueSerializer(jackson2JsonRedisSerializer);
  31. template.afterPropertiesSet();
  32. return template;
  33. }
  34. }