当前位置: 首页 > news >正文

Redis 乱码和LocalDateTime类型缓存问题

问题

Java 8 date/time type `java.time.LocalDateTime` not supported by default: add Module \"com.fasterxml.jackson.datatype:jackson-datatype-jsr310\" to enable handling

还有redis 16进制乱码的问题

引入依赖

<dependency><groupId>com.fasterxml.jackson.datatype</groupId><artifactId>jackson-datatype-jsr310</artifactId><version>2.13.3</version>
</dependency>

自定义RedisTemplate

/*** Redis配置类* 配置RedisTemplate的序列化方式*/
@Configuration
public class RedisConfig {/*** 自定义RedisTemplate,使用StringRedisSerializer和Jackson2JsonRedisSerializer* 解决Redis中的key和value显示为16进制的问题*/@Beanpublic RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {// 创建RedisTemplate对象RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();// 设置连接工厂redisTemplate.setConnectionFactory(redisConnectionFactory);// 创建Jackson2JsonRedisSerializer序列化器Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<>(Object.class);// 创建支持Java 8日期时间类型的ObjectMapperObjectMapper objectMapper = new ObjectMapper();// 指定要序列化的域,field,get和set,以及修饰符范围,ANY是都有包括private和publicobjectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);// 指定序列化输入的类型,类必须是非final修饰的,final修饰的类,比如String,Integer等会跑出异常objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY);// 注册JavaTimeModule以支持Java 8日期时间类型objectMapper.registerModule(new JavaTimeModule());// 禁用将日期写为时间戳的功能objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);// 设置ObjectMapperjackson2JsonRedisSerializer.setObjectMapper(objectMapper);// 设置Key的序列化redisTemplate.setKeySerializer(new StringRedisSerializer());redisTemplate.setHashKeySerializer(new StringRedisSerializer());// 设置Value的序列化redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);redisTemplate.setHashValueSerializer(jackson2JsonRedisSerializer);// 初始化RedisTemplateredisTemplate.afterPropertiesSet();return redisTemplate;}
} 

相关文章:

  • phpcms网站模版网络营销的常用工具
  • 网站索引页面新闻20条摘抄大全
  • 兰州手机网站制作公司宁波网络优化seo
  • 定制鞋子的app百度关键词优化多少钱
  • 长沙网站建设政府补贴怎么学seo基础
  • seo关键词优化软件排名赣州seo优化
  • 电商领域企业级应用后端开发 (Java) 就业前景深度分析报告 (2025-2030)
  • uniapp项目之小兔鲜儿小程序商城(六) 地址模块:地址管理页的实现,地址表单页的实现
  • 随机算法设计思想总结
  • 闲聊ARM内核参数传递机制
  • Harmony状态管理@Event
  • JVM的内存模型和内存结构
  • 【数字后端】- 什么是NDR规则?
  • Android检测当前进程或者应用是否被调试
  • android脱糖
  • 深度解析torchrun与local_rank
  • NIPS-2001《Partially labeled classification with Markov random walks》
  • 收银机安装飞牛NAS自动息屏方案
  • 程序猿成长之路之数据挖掘篇——聚类算法介绍
  • 01-StarRocks安装部署FAQ
  • 2025年渗透测试面试题总结-2025年HW(护网面试) 10(题目+回答)
  • linux grep的一些坑
  • (3)ROS2:6-dof前馈+PD / 阻抗控制器
  • 交易期权先从买方开始
  • 【AI大模型】Spring AI 基于Redis实现对话持久存储详解
  • 华为云对象存储OBS 支持安卓/iOS/鸿蒙UTS组件