gpt4 book ai didi

java - 如何使用 Jackson 序列化和反序列化对象列表

转载 作者:行者123 更新时间:2023-11-30 05:36:18 29 4
gpt4 key购买 nike

我在反序列化对象数组时遇到错误。

ans int 下面的表达式是 List<Restaurant>类型

String json = obj.writeValueAsString(ans);

我在下面的行中遇到错误

List<Restaurant> all= Arrays.asList(obj.readValue(reslistjson,Restaurant[].class));

错误 -无法反序列化 com.crio.qeats.dto.Restaurant[] 的实例已用完 START_OBJECT token 位于 [来源:(String)"{"restaurantId":"12","name":"A2B","city":"电子城","imageUrl":"www.google.com","latitude": 20.015,"经度":30.015,"opensAt":"18:00","closesAt":"23:00","attributes":["泰米尔语","南印度语"]}";行:1,列:1]

最佳答案

示例中的 JSON 输入是对象而不是数组。对于您的 JSON 数据,这可行:

List<Restaurant> all= Arrays.asList(objectMapper.readValue(json,Restaurant.class));

像这样的 JSON 是一个对象数组,您的原始代码可以工作:

String json = "[{..data1 goes here....}, {..data2 goes here....}]";
List<Restaurant> all= Arrays.asList(objectMapper.readValue(json,Restaurant[].class));

关于java - 如何使用 Jackson 序列化和反序列化对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56536639/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com