在解析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 问题的更多相关文章

  1. 你好,C++(38)从问题描述中发现对象的属性和行为 6.4 工资程序成长记:类与对象(上)

    6.4  工资程序成长记:类与对象 “夜半三更哟,盼天明:寒冬腊月哟,盼春风.若要盼得哟,涨工资,岭上……”自从上次老板许诺给小陈涨工资以后,一转眼又过去几个月了,可是涨工资的事一点动静都没有.小陈只 ...

  2. WCF 笔记 (2) - 传输泛型 List 对象

    WCF 笔记 (2) - 传输泛型 List 对象 本帖介绍怎么在 WCF 中,在 Server-side 和 Client-side 之间,传递默认无法传输的 List<T>.List& ...

  3. wpf 导出Excel Wpf Button 样式 wpf简单进度条 List泛型集合对象排序 C#集合

    wpf 导出Excel   1 private void Button_Click_1(object sender, RoutedEventArgs e) 2 { 3 4 ExportDataGrid ...

  4. FastJson实现复杂对象序列化与反序列化

    原文:http://blog.csdn.net/xqhadoop/article/details/62217954 一.认识FastJson 1.优势 fastjson是目前java语言中最快的jso ...

  5. Fastjson转换json到带泛型的对象(如Map)报错解决

    List<CategoryDTO> categoryList = null; String categoryStr = redisService.get(RedisKeyConstant. ...

  6. fastJson泛型如何转换

    引子 现在负责的业务 和 json 打交道比较多, 最近使用fastJson框架 json串转成泛型对象遇到了一个异常 : java.lang.ClassCastException 还原下场景 : 模 ...

  7. 记一起Java大对象引起的FullGC事件及GC知识梳理

    背景 最近发生了一起 Java 大对象引起的 FullGC 事件.记录一下. 有一位商家刷单,每单内有 50+ 商品.然后进行订单导出.订单导出每次会从订单详情服务取100条订单数据.由于 100 条 ...

  8. 使用FastJSON,将对象或数组和JSON串互转

    Fastjson,是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库.其开源的下载网址为:https://github.com/AlibabaTech/fastjson. 示例代码如下: ...

  9. com.alibaba.fastjson.JSONObject之对象与JSON转换方法

    com.alibaba.fastjson.JSONObject时经常会用到它的转换方法,包括Java对象转成JSON串.JSON对象,JSON串转成java对象.JSON对象,JSON对象转换Java ...

随机推荐

  1. iOS开发之XMPPFramework开发基础介绍

    1 使用iPhoneXMPP实例 2 修改xmppstream设置 3 基础协议的介绍 协议 协议简介 XEP-0009 在两个XMPP实体间传输XML-RPC编码请求和响应 XEP-0006 使能与 ...

  2. qq第三方登录网站接口

    网站如何实现QQ登录功能 | 浏览:11029 | 更新:2013-12-05 10:09 1 2 3 4 5 6 7 分步阅读 一键约师傅 百度师傅为你的电脑系统,选一个靠谱师傅! 如果想让网站实现 ...

  3. 为什么@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

    Spring Boot会自动根据jar包的依赖来自动配置项目,例如当你项目下面有HSQLDB的依赖,Spring Boot会自动创建默认的内存数据库的数据源DataSource, 但我们使用Mybat ...

  4. 20145335郝昊《java程序设计》第8周学习总结

    20145335郝昊 <Java程序设计>第8周学习总结 教材学习内容总结 第14章 NIO与NIO2 NIO简介 NIO使用频道来衔接数据结点,在处理数据时,NIO可以让你设定缓冲区容量 ...

  5. 解读:MultipleOutputs类

    //MultipleOutputs类用于简化多文件输出The MultipleOutputs class simplifies writing output data to multiple outp ...

  6. LeetCode——Longest Repeating Character Replacement

    1. Question Given a string that consists of only uppercase English letters, you can replace any lett ...

  7. 记jsp判断

    empty:表示空字符串,null,空数组,空集合. ! empty:表示非空字符串,非null,非空数组,非空集合.

  8. kafka log文件和offset原理

    log与offset 日志存储路径根据配置log.dirs ,日志文件通过 topic-partitionId分目录,再通过log.roll.hours 和log.segment.bytes来分文件, ...

  9. 【TensorFlow/简单网络】MNIST数据集-softmax、全连接神经网络,卷积神经网络模型

    初学tensorflow,参考了以下几篇博客: soft模型 tensorflow构建全连接神经网络 tensorflow构建卷积神经网络 tensorflow构建卷积神经网络 tensorflow构 ...

  10. install opencv

    OpenCV是一个基于开源发行的跨平台计算机视觉库,它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python.Ruby.MATLAB等语言的接口,实现了图像处理和计算机视觉 ...