参考:https://blog.csdn.net/qq635785620/article/details/10436789

https://blog.csdn.net/qq_40206864/article/details/82997458

说明

com.alibaba.fastjson.JSONObject是经常会用到的JSON工具包,同样它的转换方法也会经常被我们使用,包括对象转成JSON串,JSON串转成java对象等,如果过一段时间不用的话很容易就会忘记,所以将使用方法总结如下,以便以后忘记了方便查

询。

//Java对象转换成String类型的JSON字符串
JSONObject.toJSONString(Java对象)//String类型的JSON字符串转换成Java对象
JSONObject.toJavaObject(JSON字符串,Java对象.class)//Json字符串转换成JSONObject对象
JSONObject.parseObject(JSON字符串)//JSON字符串转换成Java对象
JSONObject.parseObject(JSON字符串,Java对象.class)

JSON

JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。

创建json对象

用put(key,value)拼接json:

JSONObject object = new JSONObject();
jsonObjectRow.put("YWH", projId);
jsonObjectRow.put("YWX", "2010");
jsonObjectRow.put("JGXYH", jsonObject.getString("ZJYH"));

创建json数组

用add添加json对象(json对象转json数组):

JSONArray jsonArrayRow = new JSONArray();
jsonArrayRow.add(object);

JSON.parseObject(String text)与JSONObject.parseObject(String text)

JSONObject是JSON的子类。JSON是一个抽象类,JSON中有一个静态方法parseObject(String text),将text解析为一个JSONObject对象并返回;JSONObject是一个继承自JSON的类,当调用JSONObject.parseObject(result)时,会直接调用父类的parseObject(String text)。所以两者没什么区别,一个是用父类去调用父类自己的静态的parseObject(String text),一个是用子类去调用父类的静态parseObject(String text),两者调的是同一个方法。

parseObject(String str) 的作用:

json.parseObbject(String str)是将str转换成相应的jsonObject对象,其中str是“键值对”形式的json字符串,转化为jsonObject对象之后就可以使用其内置的方法,进行处理

JSON.parseArray()

这个方法的作用就是将json格式的数据转换成数组格式。
假设有Person这个类,有json类型数据jsonStr = [{"name":"张三","age":"1"},{"name":"李四","age":"4"}],那么List lists = json.parseArray(jsonStr, Person.class);lists就可以接收jsonStr了

JSON与JAVA数据的转换()

来自net.sf.json.*下的类(jar包是json-lib-x.x.jar)
JSONObject jo = JSONObject.fromObject(map);将参数解析成JSONObject对象

它在对Object转换的时候是按照domain类中的所有getXXX()方法进行转换的。如果你在类中写了非属性的getXXX()方法,那么返回给你的就会有XXX属性了。

1. List集合转换成json代码List list = new ArrayList();list.add( "first" );list.add( "second" );JSONArray jsonArray2 = JSONArray.fromObject( list );2. Map集合转换成json代码Map map = new HashMap();map.put("name", "json");map.put("bool", Boolean.TRUE);map.put("int", new Integer(1));map.put("arr", new String[] { "a", "b" });map.put("func", "function(i){ return this.arr[i]; }");JSONObject json = JSONObject.fromObject(map);3. Bean转换成json代码JSONObject jsonObject = JSONObject.fromObject(new JsonBean());4. 数组转换成json代码boolean[] boolArray = new boolean[] { true, false, true };JSONArray jsonArray1 = JSONArray.fromObject(boolArray);5. 一般数据转换成json代码JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']" );

6、首先将json字符串转换为json对象,然后再解析json对象,过程如下。

JSONObject jsonObject = JSONObject.fromObject(jsonStr);

根据json中的键得到它的值

String name = jsonObject.getString("name");
int num = jsonObject.getInt("num");
String sex = jsonObject.getString("sex");
int age = jsonObject.getInt("age");

7.将json字符串转换为java对象
先将json字符串转换为json对象,再将json对象转换为java对象,如下所示。

JSONObject obj = new JSONObject().fromObject(jsonStr);//将json字符串转换为json对象
将json对象转换为java对象
Person jb = (Person)JSONObject.toBean(obj,Person.class);//将建json对象转换为Person对象

3.将java对象转换为json字符串
先将java对象转换为json对象,在将json对象转换为json字符串

JSONObject json = JSONObject.fromObject(obj);//将java对象转换为json对象
String str = json.toString();//将json对象转换为字符串

JSONObject.parseObject和JSONObject.fromObject相关推荐

  1. 详解JSONObject.parseObject和JSONObject.fromObject——Web网络系列学习笔记

    一. 说明 com.alibaba.fastjson.JSONObject是经常会用到的JSON工具包,同样它的转换方法也会经常被我们使用,包括对象转成JSON串,JSON串转成java对象等,如果过 ...

  2. JSONObject.parseObject()

    java获取json中某个字段 import com.alibaba.fastjson.JSONObject; public class JsonTest {public static void ma ...

  3. JSON.parseObject(String str)与JSONObject.parseObject(String str)的区别

    一.首先来说说fastjson fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发.其主要特点是: ① 快速:fastjson采用独创的算法, ...

  4. JSONObject.parseObject

    {"data":{"shop_uid":"123";"id":"123"}} 将上面的json字符串 ...

  5. JSONObject对象常用方法讲解--fromObject和toBean

    一. 含义      JSONObject.fromObject( ): 从java对象转化为JSONObject对象:      JSONObject.toBean( ): 从JSONObject对 ...

  6. JSONObject.parseObject解析数据后保持顺序不变

    在开发过程中遇到一个问题:服务器经过排序返回后的字符串数据在使用fastjson解析后,数据顺序发生了变化,这个问题也就是:使用fastjson解析数据后导致顺序改变或者说是如何保持String字符串 ...

  7. jsonobject json对象里面_「jsonobject」用JSONObject解析和处理json数据 - seo实验室

    jsonobject 本文中主要介绍jsonobject处理json数据时候的一些常用场景和方法. (一)jar包下载 所需jar包打包下载百度网盘地址:https://pan.baidu.com/s ...

  8. jsonobject中getkey_Java JsonObject.get方法代码示例

    本文整理汇总了Java中org.json.simple.JsonObject.get方法的典型用法代码示例.如果您正苦于以下问题:Java JsonObject.get方法的具体用法?Java Jso ...

  9. JSONObject的toBean 和 fromObject

    public static void main(String[] args) {   Map map=new HashMap();   map.put("我","妹&qu ...

  10. java遍历jsonobject,JsonArray和JsonObject遍历方法

    一:遍历JsonArray // 一个未转化的字符串 String str = "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c' ...

最新文章

  1. 通过域名,直接访问到网站主页
  2. python参数_python 参数
  3. C++中的“error:LNK2005 已经在*.obj中定义”异常
  4. 勒索病毒如何防治?看阿里云双拳出击不留隐患
  5. 去哪儿-11-city-components
  6. IMF:央行须变得更像苹果公司以保证央行数字货币处在技术前沿
  7. java基础学习的心得体会
  8. 中国34个省级行政区2000年-2021年逐月NDVI统计分析结果
  9. 使用AudioRecord实现声音采集
  10. 谷歌中国六月过三关 研发团队已失七将
  11. 山海演武传·黄道·第一卷 雏龙惊蛰 第二十五 ~ 二十六章 赤龙与紫龙
  12. flask怎么创建虚拟环境_在Windows OS中创建虚拟环境并在本地运行Flask应用程序
  13. 配置猫抓,抓取网页视频
  14. vue 拍照和上传图片
  15. crack.vbs病毒,u盘里的所有文件全部变成快捷方式
  16. 解决每次新建word都有页眉和页脚
  17. 2022中级Android开发面试解答,当上项目经理才知道
  18. linux安装两个独立显卡驱动,Manjaro Linux 双显卡安装步骤及独立显卡运行游戏(Nvidia GeForce GTX 980m)...
  19. 个人建设网站流程解说,手把手教你如何在阿里云上搭建自己的网站
  20. java导入文件的病毒检测功能

热门文章

  1. Javasocket编程步骤,已有千人收藏
  2. ask调制matlab实验,ASK调制的matlab代码
  3. Office 2021办公套件iso镜像下载
  4. 用英伟达 DIGITS 进行图像分割
  5. BCD码与十进制转换
  6. 计算机如何安装pdf,pdf虚拟打印机是什么?怎么安装到电脑里
  7. 你们心心念念的 GitHub 客户端终于来了!
  8. 使用python简单免费转换视频格式
  9. [算法]直线与圆的交点程序设计
  10. axure rp 8.1.0.3379 密钥license,Axure8.1中文破解版 8.1.0.3379 含授权码