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

【RabbitMQ】记录 InvalidDefinitionException: Java 8 date/time type

目录

1. 添加必要依赖

2. 配置全局序列化方案(推荐)

3. 配置RabbitMQ消息转换器

关键点说明


1. 添加必要依赖

首先确保项目中包含JSR-310支持模块:

<dependency><groupId>com.fasterxml.jackson.datatype</groupId><artifactId>jackson-datatype-jsr310</artifactId><version>2.12.5</version> <!-- 版本需与项目中的Jackson版本匹配 -->
</dependency>

2. 配置全局序列化方案(推荐)

创建Jackson配置类统一处理时间类型:

@Configuration
public class JacksonConfig {@Beanpublic Jackson2ObjectMapperBuilderCustomizer jsonCustomizer() {return builder -> {// 设置全局日期格式builder.simpleDateFormat("yyyy-MM-dd HH:mm:ss");// 注册Java8时间模块builder.modules(new JavaTimeModule());// 禁用时间戳格式builder.featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);};}
}

3. 配置RabbitMQ消息转换器

在RabbitMQ配置中指定使用Jackson2JsonMessageConverter:

@Bean
public MessageConverter jsonMessageConverter() {ObjectMapper objectMapper = new ObjectMapper().registerModule(new JavaTimeModule()).disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);return new Jackson2JsonMessageConverter(objectMapper);
}

关键点说明

  1. 版本兼容性​:确保jackson-datatype-jsr310版本与其他Jackson组件版本一致
  2. 时间格式​:禁用时间戳格式(WRITE_DATES_AS_TIMESTAMPS)可避免输出数字时间戳
  3. 微服务场景​:该方案同样适用于其他Spring组件如RestTemplate/Feign的序列化
http://www.dtcms.com/a/203892.html

相关文章:

  • 超低延迟音视频直播技术的未来发展与创新
  • 数据库健康监测器(BHM)实战:如何通过 HTML 报告识别潜在问题
  • 深入理解万维网:URL、HTTP与HTML
  • 第16天-使用Python Pillow库常见图像处理场景
  • 如何使用Antv X6使用拖拽布局?
  • anaconda创建环境出错HTTPS
  • 每日Prompt:实物与手绘涂鸦创意广告
  • 【HTML-4】HTML段落标签:构建内容结构的基础
  • MySQL备份恢复:数据安全的终极指南
  • RPC 协议详解、案例分析与应用场景
  • 将VMware上的虚拟机和当前电脑上的Wifi网卡处在同一个局域网下,实现同一个局域网下实现共享
  • Neo4j实现向量检索
  • 【专题】机器学习期末复习资料
  • 【机器学习】支持向量机(SVM)
  • 华为鸿蒙电脑发布,折叠屏怎么选?
  • ToDesk云电脑、并行智算云与顺网云AI支持能力深度实测报告
  • 深度解析 Java 中介者模式:重构复杂交互场景的优雅方案
  • Linux上conda环境安装完全手札
  • JavaScript-DOM-02
  • 遨游科普:三防平板有哪些品牌?哪个品牌值得推荐?
  • 新浪、京东golang一面整理
  • 2025.05.21华为暑期实习机考真题解析第三题
  • ./build/mkfs.jffs2: Command not found
  • 34、React Server Actions深度解析
  • PDF处理控件Aspose.PDF教程:以编程方式将PDF转换为Word
  • Flask 路由装饰器:从 URL 到视图函数的优雅映射
  • 继DeepSeek之后,又一国产模型迎来突破,或将解答手机端AI的疑惑
  • Android Framework开发环境搭建
  • 游戏引擎学习第301天:使用精灵边界进行排序
  • 量子计算模拟:从理论到实践