记 fastjson泛型转对象 第一次可以正常转,第二次就变成JSONArray 问题
在解析json数据的时候,在使用泛型对象的时候即:
public class ResultMsgDto<E> implements Serializable {
private static final long serialVersionUID = 123L;
private int resultCode;
private E resultObject;
private String resultMsg;
// get set
}
第一次在使用
ResultMsgDto<List<ArticleDto>> resultMsg = JSON.parseObject(result, new TypeReference<ResultMsgDto<List<ArticleDto>>>() {});
把json字符串转换为 对应泛型对象的时候是可以的,因为我增加一个数据,从服务器中再次获取json字符之后,再次调用上面的方法的时候,这次没有成功,而是JSONArray 类型的数据
之后网上找到了解决方法:
1、https://github.com/alibaba/fastjson/issues/569 这里面有问题 但是已经解决了 这个时候你就要看看你的fastjson的jar包版本,你可以换一个高版本的试试
2、如果换了高版本还是不行的话,那估计你犯了跟我一样的错误
这个时候你就需要查看你的代码中,有没有 没有使用泛型而直接使用ResultMsgDto,例如下面这个错误的列子:
ResultMsgDto resultMsg = JSON.parseObject(result, new TypeReference<ResultMsgDto>() {});
这个时候就要把这语句中的泛型类型加上去,即使你用不着他对于的对象,但是还需要加上泛型
切记:解决方案:统一使用泛型类型,项目中不允许没有泛型类型的ResultMsgDto,就不会存在这个问题。
参考:http://blog.csdn.net/ykdsg/article/details/50432494 感谢这位同学的无私奉献
记 fastjson泛型转对象 第一次可以正常转,第二次就变成JSONArray 问题的更多相关文章
- 你好,C++(38)从问题描述中发现对象的属性和行为 6.4 工资程序成长记:类与对象(上)
6.4 工资程序成长记:类与对象 “夜半三更哟,盼天明:寒冬腊月哟,盼春风.若要盼得哟,涨工资,岭上……”自从上次老板许诺给小陈涨工资以后,一转眼又过去几个月了,可是涨工资的事一点动静都没有.小陈只 ...
- WCF 笔记 (2) - 传输泛型 List 对象
WCF 笔记 (2) - 传输泛型 List 对象 本帖介绍怎么在 WCF 中,在 Server-side 和 Client-side 之间,传递默认无法传输的 List<T>.List& ...
- wpf 导出Excel Wpf Button 样式 wpf简单进度条 List泛型集合对象排序 C#集合
wpf 导出Excel 1 private void Button_Click_1(object sender, RoutedEventArgs e) 2 { 3 4 ExportDataGrid ...
- FastJson实现复杂对象序列化与反序列化
原文:http://blog.csdn.net/xqhadoop/article/details/62217954 一.认识FastJson 1.优势 fastjson是目前java语言中最快的jso ...
- Fastjson转换json到带泛型的对象(如Map)报错解决
List<CategoryDTO> categoryList = null; String categoryStr = redisService.get(RedisKeyConstant. ...
- fastJson泛型如何转换
引子 现在负责的业务 和 json 打交道比较多, 最近使用fastJson框架 json串转成泛型对象遇到了一个异常 : java.lang.ClassCastException 还原下场景 : 模 ...
- 记一起Java大对象引起的FullGC事件及GC知识梳理
背景 最近发生了一起 Java 大对象引起的 FullGC 事件.记录一下. 有一位商家刷单,每单内有 50+ 商品.然后进行订单导出.订单导出每次会从订单详情服务取100条订单数据.由于 100 条 ...
- 使用FastJSON,将对象或数组和JSON串互转
Fastjson,是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库.其开源的下载网址为:https://github.com/AlibabaTech/fastjson. 示例代码如下: ...
- com.alibaba.fastjson.JSONObject之对象与JSON转换方法
com.alibaba.fastjson.JSONObject时经常会用到它的转换方法,包括Java对象转成JSON串.JSON对象,JSON串转成java对象.JSON对象,JSON对象转换Java ...
随机推荐
- php面向对象类中常用的魔术方法
php面向对象类中常用的魔术方法 1.__construct():构造方法,当类被实例化new $class时被自动调用的方法,在类的继承中可以继承与覆盖该方法,例: //__construct( ...
- Linux学习笔记之CentOS6.9 防火墙的关闭以及开启
有的时候,我们需要对系统的防火墙进行操作,今天小编就给大家讲解一下如何开启以及关闭CentOS6.9系统下的防火墙. 输入:cat /etc/issue 查看版本 (一)通过service命令 s ...
- Python3.x:报错POST data should be bytes, an iterable of bytes
Python3.x:报错POST data should be bytes, an iterable of bytes 问题: python3.x:报错 POST data should be byt ...
- 探讨"点"语法的奥秘
点语法 一直以来,都不理解什么是点语法,都说是相当于链接或是路径.也许我浏览的信息量少吧,看过好几篇有关的博文,没什么记载,本篇只是初步见解分析. 在javascript里,属性和方法都使用“点”语法 ...
- react native 0.56.0版本在windows下有bug不能正常运行
react native的0.56.0版本在windows下有bug不能正常运行请init 0.55.4的版本 react-native init MyApp --version 0.55.4 注意v ...
- 关于makefile的那些事儿
最近越来越感觉到,在linux下面身为一个程序员,不会makefile就不是一个合格的程序员,所以今天我们介绍下常用的makefile编写. 了解知识: 编译:把高级语言书写的代码转换为机器可识别的机 ...
- jqGrid入门简单使用
jqGrid中文API:https://blog.mn886.net/jqGrid/ 这里没有请求后台,是直接读取本地.json文件 就两个文件,一个html.一个json文件,jquery是jqgr ...
- 2017ACM/ICPC广西邀请赛-重现赛 1001 A Math Problem
2017-08-31 16:48:00 writer:pprp 这个题比较容易,我用的是快速幂 写了一次就过了 题目如下: A Math Problem Time Limit: 2000/1000 M ...
- python 类和对象的属性
python类和对象的属性分为类属性和对象属性两大类,类属性属于类,而对象属性属于对象. 1. 父类的对象属性会被子类的对象继承. 2. 父类的类属性会被子类继承,还是作为类属性,如果父类改变了类属性 ...
- linux下增加useradd提示existing lock file /etc/subgid.lock without a PID
# useradd git -g git useradd: existing lock file /etc/subgid.lock without a PID useradd: cannot lock ...