问题描述:

com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $

问题分析:

1、将一个List对象序列化之后,使用fromJson(String json, Class<T> classOfT)方法反序列化为List对象,使用的反序列化方法不对导致失败。

        List<TestModel> testModelList = new ArrayList<>();TestModel testModel = new TestModel();testModel.setLocalDate(LocalDate.now());testModel.setLocalDateTime(LocalDateTime.now());testModelList.add(testModel);Gson gson = new Gson();String jsonStr = gson.toJson(testModelList);gson.fromJson(jsonStr, TestModel.class);

解决办法:应该使用fromJson(String json, Type typeOfT)进行反序列化。

        List<TestModel> testModelList = new ArrayList<>();TestModel testModel = new TestModel();testModel.setLocalDate(LocalDate.now());testModel.setLocalDateTime(LocalDateTime.now());testModelList.add(testModel);Gson gson = new Gson();String jsonStr = gson.toJson(testModelList);testModelList = gson.fromJson(jsonStr, new TypeToken<List<TestModel>>() {}.getType());

Gson Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $问题解决相关推荐

  1. gson Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path

    返回数据解析错误 com.google.gson.JsonSyntaxException:  java.lang.IllegalStateException: Expected BEGIN_OBJEC ...

  2. Expected BEGIN_OBJECT but was BEGIN_ARRARY at line 1 column 2 path$异常解决方法

    [{"id": 1,"name": "移动开发","alias": "mobile"},{" ...

  3. java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $

    使用环境: 当遇到这种报错的时候. 解决方法: 1 查看自己最近写的代码,是否有改描述对应的状态异常的部分. 如错误提示: 应该是BEGIN_ARRAY  但是却使用了STRING类型的数据格式,位置 ...

  4. Expected a string but was BEGIN_OBJECT at line 1 column 2 path $

    刚才使用Retrofit 写请求的时候发现了这行错误 看英文我解析String 但是却是Object  这个处理方法就是把String 该为JSONObject 即可 如下.. //请求传递参数Cal ...

  5. 后台返回数据打印是[object object]的,报错:SyntaxError: JSON.parse: expected property name or ‘}‘ at line 1 column

    今天基于这个问题纠结了一下午,导致这个问题的坑也是挺深的,查找问题最好是从这条数据的存储开始查找 问题1:先确定后台接收数据后存储到数据库里有没有自动转义特殊字符,比如 原始数据是:[{"u ...

  6. 报错:org.apache.jasper.JasperException: /index.jsp (line: 1, column: 17) equal symbol expected

    现象:写了如下一个jsp文件,导入需要用到的两个包: 运行结果报错: org.apache.jasper.JasperException: /index.jsp (line: 1, column: 1 ...

  7. Python 中JSONDecodeError: Expecting value: line 1 column 1 (char 0)错误

    文章目录 尝试解析空字符串会导致错误 错误的常见原因 尝试解析无效的 JSON 值 忘记用引号括起属性或字符串值 对属性或值使用单引号而不是双引号 确保你没有尾随逗号 发出 HTTP 请求时得到空响应 ...

  8. json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决

    json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决 参考文章: (1)json.decoder.J ...

  9. Extra data: line 1 column 342004 (char 342003)

    Extra data: line 1 column 342004 (char 342003)

最新文章

  1. Apache Shiro 使用手册
  2. Android Studio 打开提示Invalid Gradle JDK configuration found错误
  3. python爬取b站用户_用Python爬取bilibili全站用户信息
  4. chart.js 饼图显示百分比_实战PyQt5: 135-数据可视化之QChart绘制饼图
  5. python删除列表元素 // 列表的切片
  6. C++基础与深度解析第六章:函数
  7. Day7 python高级特性-- 切片 Slice
  8. C#反编译工具:ILSpy
  9. 反激变换器的变压器设计
  10. 贩卖个人信息非法获利300余万,平安惠普、拍拍贷都是买方
  11. 【答学员问】虚拟机不能正常启动,提示找不到VMX二进制文件
  12. 备战Java后端【Day6】
  13. IDEA/GoLand 添加自定义特殊注释【注释高亮】
  14. 计算机应用基础时间,《计算机应用基础》考试时间安排
  15. 人工智能领域技术,主要包含了哪些核心技术?
  16. oracle导入索引b报错,数据迁移:oracle数据库表结构导出exp、导入imp
  17. USB转串口芯片PL2303HX 引脚定义
  18. 计算机管理在哪里管理用户密码,管理员密码,教您怎么设置管理员密码
  19. docker部署白板-开源软件excalidraw
  20. 通过js获取Model中数据

热门文章

  1. Citrix XenApp和XenDesktop 打印系统解析②
  2. 从零开始学web开发之html5-4.列表
  3. UML各种模板图型汇总大全,教你轻松画!
  4. 一种新的基于时空图神经网络的交通流预测模型
  5. AIX 用户使用的系统资源限制包括两个概念 --- 硬限制(hard limits) 和软限制(soft limits)
  6. 七夕情人节朋友圈要红包说说推荐
  7. Python:人民币兑换
  8. Linux-常用shell命令
  9. excel中的vlookup函数使用,查找对应信息
  10. ab压测- Apache HTTP server benchmarking tool