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

【小bug】使用 RestTemplate 工具从 JSON 数据反序列化为 Java 对象时报类型转换异常

        起因:今天编写一个请求时需要通过RestTemplate调用外部接口,获取一些信息,但是在获取了外部接口响应内容后,使用强制转换发现报了类型转换异常。之前也遇到过,但是没记录下来,今天又查了一遍……干脆记录一下。

        控制类方法报错位置

        报错信息

1. 原因

        在使用 RestTemplate 从 JSON 数据反序列化时,默认会将 JSON 数据转换为 LinkedHashMap。而在我的代码 result.get("obj") 的实际数据类型就是LinkedHashMap。

2. 解决

        ObjectMapper是Jackson提供的一个类,用于将json数据转换为java对象。

    ObjectMapper objectMapper = new ObjectMapper();
    //                                            需要转换的内容     目标类
    Resfood resfood = objectMapper.convertValue(result.get("obj"), Resfood.class);

        

        转换成功~


http://www.kler.cn/a/321974.html

相关文章:

  • git 清除二进制文件的 changes 状态
  • [笔记]某华AICrane系统全景笔记
  • 鸿蒙界面开发(九):列表布局 (List)
  • 数据结构 - 查找算法
  • 重生之我们在ES顶端相遇第16 章 - Lucene 写入流程
  • 官方换装规格,多种。支持证件照制作的api接口
  • IDEA插件开发入门
  • jekins忘记admin密码
  • H3C R4900 G3服务器上配置本地磁盘RAID
  • 高通平台Android源码下载
  • 使用 Llama-index 实现的 Agentic RAG-Router Query Engine
  • 【rabbitmq-server】安装使用介绍
  • Redis篇(初识Redis)
  • 【深度学习】【TensorRT】【C++】模型转化、环境搭建以及模型部署的详细教程
  • mcuboot使用介绍
  • 操作简单 地检编码器 武汉正向科技售后优质
  • GPU服务器本地搭建Dify+xinference实现大模型应用
  • Python练习宝典:Day 5 - 选择题 - 网络编程、进程和线程
  • 企微SOP:构建标准化运营流程,驱动企业高效增长
  • CPU中也应用到了缓存:CPU3层高速缓存,以及它的缓存一致性问题、MESI协议和Java的一些应用