fastjson解析json文本

背景:

项目中经常会用到解析JSON文本,有的同事特别依赖公司自己封装的工具类,离开了工具类就不知道怎么去解析,下面简单的介绍一下用阿里的fastjson去解析文本

引入Maven依赖

注:尽量使用1.2.69以上版本,69以下版本有重大漏洞。

<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.72</version>
</dependency>

简单举例:

假设下面是待解析String 类型的json文本jsonParams:

{"retCode": "0000","retInfo": "PEND","account": "815588888","status": 1,"list": [{"userId": "232ed6e1878e456cb990d496c282badd","phone": "123"},{"userId": "8a082bca79304ce78330c492370f8974","phone": "666"}]
}
  • 从String 类型的json文本里获取某个字段

// 首先将String类型的文本转化成JSONObject
JSONObject jsonObject = JSON.parseObject(jsonParams);// 获取jsonObject中String类型的字段retCode
String retCode = jsonObject.getString("retCode");// 获取jsonObject中Integer类型的字段status
Integer status = jsonObject.getInteger("status");// 获取jsonObject中集合类型的字段list
JSONArray array = jsonObject.getJSONArray("list");
  • 如果用实体去接收,可以自己定义一个相应的类(假设是Product)
Product product = JSON.parseObject(jsonParams, Product.class);
  • JSON.toJSONString(Object object)可以把Object 类型的实体转换成JSON字符串。

String jsonString = JSON.toJSONString(product);
  • 里面有很多高度封装好的方法可以直接去使用,很方便,大家可以自己去探索一下,根据自己的需要去封装一个工具类。

fastjson解析json文本相关推荐

  1. fastjson解析json简介

    2019独角兽企业重金招聘Python工程师标准>>> 一.简介 阿里巴巴FastJson是一个Json处理工具包,是一个Java语言编写的高性能功能完善的JSON库.,包括&quo ...

  2. Android开发--使用实体类解析JSON文本

    Android开发–使用实体类解析JSON文本 在Android开发过程中,涉及到了API的调用的时候,会返回特定的数据,两个主流返回的数据格式是JSON形式和XML形式.但是相对于XML,JSON数 ...

  3. 安卓开发 fastjson 解析json使用详解

    导入 Android studio 在 build.gradle 写依赖 compile 'com.alibaba:fastjson:1.2.37' 反序列化 public static final ...

  4. 78. Spring Boot完美使用FastJson解析JSON数据【从零开始学Spring Boot】

    [原创文章,转载请注明出处] 个人使用比较习惯的json框架是fastjson,所以spring boot默认的json使用起来就很陌生了,所以很自然我就想我能不能使用fastjson进行json解析 ...

  5. fastjson解析JSON数据乱序导致的问题

    本文作者:合肥工业大学 电子商务研究所 钱洋 email:1563178220@qq.com . 内容可能有不到之处,欢迎交流. 未经本人允许禁止转载. 文章目录 问题背景 问题解决 完整的案例代码 ...

  6. 解析json文本并使用handler完成三个控件文本内容的切换

    Demo需求: 三个控件展示三个关键词,在资源文件获取文本,每隔5秒切换下一词,关键词展示到最后再重头开始 开发工具:Android studio 布局: <?xml version=" ...

  7. Java FastJson解析json字符串 提取键值

    ps : 没啥难点! 总结的两个要点错误请纠正 不想看的直接复制代码运行看结果就行 简单例子为例 (例子在下面 习惯总结写上面 没有好的排版经验) 简单例子没啥要点了 照着套就行 - 之前用的 jav ...

  8. SpringBoot中使用FastJson解析Json数据

    场景 1.SpringBoot默认配置的是Jackson. 2.项目搭建专栏: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/column/info/35688 ...

  9. 使用fastjson解析json抓取新浪新闻文章

    首先看看2个简单的fastjson的使用 例子一 package ivyy.taobao.com.domain.json;import java.util.Iterator;import com.al ...

  10. 5.spring boot使用FastJson解析JSON数据

    2019独角兽企业重金招聘Python工程师标准>>> 1.引入FastJson依赖包 <dependency><groupId>com.alibaba< ...

最新文章

  1. SpringBoot (一) :入门篇 Hello World
  2. 各大知名企业的Research展示
  3. java contains_Java基础教程|生成不重复随机数 java
  4. 计算理论2--可计算理论
  5. 图解WordPress主题(模板)架构
  6. linux安装mysql的分支mariadb
  7. Redis集群客户端添加数据报错(error) CLUSTERDOWN The cluster is down
  8. leetcode报错runtime error: reference binding to null pointer of type ‘std::vector<std::__cxx11::basic_
  9. 计算机辅助设计b实验目的,上海电力学院电路计算机辅助设计1--含有受控源电路辅助分析...
  10. jupyter notebook和python有什么区别_如何在Jupyter Notebook中使用Python虚拟环境?
  11. Java多线程学习笔记-线程的使用
  12. JavaScript求两点之间相对于Y轴的顺时针旋转角度
  13. 2017百度之星资格赛:1005. 寻找母串(卡特兰数+分块打表)
  14. 使用Yii 1.1框架搭建第一个web应用程序
  15. 解决matlab的警告: MATLAB 先前因底层图形错误而崩溃。
  16. linux 读写信号量学习
  17. 4用计算机显示内存不足,电脑提示内存不足的解决方法总汇
  18. WAMP5配置本地服务器(超级详细教程)
  19. axurerp9怎么生成html形式页面,Axure RP教程 Axure RP如何生成HTML文件
  20. 2106_视频处理与压缩技术_中文综述

热门文章

  1. 利用windbg简单调试dump文件
  2. NUVOTON-MS51FB9AE规格书方案
  3. CAS单点登录【1】-理论(cas架构、https、SSL、TLS、非对称加密、证书、CA、握手)、OpenSSL、cas(认证、指定加密策略)
  4. 使用UpdateLayeredWindow有概率出现317错误解决方法
  5. Android应用源码基于安卓的个人隐私监控项目
  6. 给定一个年月日,计算那天是星期几(数学)
  7. 腾讯微云 for Mac v
  8. (转)sqlite developer注册方法
  9. 王家林 构建spark集群
  10. 在ADF应用中,能够通过 oracle.adf.view.rich.security.FRAME_BUSTING 参数来使用framebusting功能。