JSONObject详解

2023-11-13

JSONObject只是一种数据结构,可以理解为JSON格式的数据结构(key-value 结构),可以使用put方法给json对象添加元素。JSONObject可以很方便的转换成字符串,也可以很方便的把其他对象转换成JSONObject对象。

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.36</version>    
</dependency>
  • 通过原生生成json数据格式。
JSONObject zhangsan = new JSONObject();
        try {
            //添加
            zhangsan.put("name", "张三");
            zhangsan.put("age", 18.4);
            zhangsan.put("birthday", "1900-20-03");
            zhangsan.put("majar", new String[] {"哈哈","嘿嘿"});
            zhangsan.put("null", null);
            zhangsan.put("house", false);
            System.out.println(zhangsan.toString());
        } catch (JSONException e) {
            e.printStackTrace();
        }
  • 通过hashMap数据结构生成
 HashMap zhangsan = new HashMap<>();
        
        zhangsan.put("name", "张三");
        zhangsan.put("age", 18.4);
        zhangsan.put("birthday", "1900-20-03");
        zhangsan.put("majar", new String[] {"哈哈","嘿嘿"});
        zhangsan.put("null", null);
        zhangsan.put("house", false);
        System.out.println(new JSONObject(zhangsan).toString());
  • 通过实体生成 
Student student = new Student();
        student.setId(1);
        student.setAge("20");
        student.setName("张三");
        //生成json格式
        System.out.println(JSON.toJSON(student));
        //对象转成string
        String stuString = JSONObject.toJSONString(student);
  • JSON字符串转换成JSON对象
String studentString = "{\"id\":1,\"age\":2,\"name\":\"zhang\"}";
 
//JSON字符串转换成JSON对象
JSONObject jsonObject1 = JSONObject.parseObject(stuString);
 
System.out.println(jsonObject1);
5.list对象转listJson

ArrayList studentLsit = new ArrayList<>();
        Student student1 = new Student();
        student1.setId(1);
        student1.setAge("20");
        student1.setName("asdasdasd");
 
        studentLsit.add(student1);
 
        Student student2 = new Student();
        student2.setId(2);
        student2.setAge("20");
        student2.setName("aaaa:;aaa");
 
        studentLsit.add(student2);
  • list转json字符串
String string = JSON.toJSON(studentLsit).toString();
        System.out.println(string);
 
        //json字符串转listJson格式
        JSONArray jsonArray = JSONObject.parseArray(string);
 
        System.out.println(jsonArray);

阿里的json很好用,还有一个谷歌Gson也不错。有兴趣的可以看一看

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSONObject详解 的相关文章

随机推荐

  • 电脑上面的word文档被删除了怎么办?分享四种亲测恢复方法

    不小心把电脑里面的word文档删除了 当你需要用到这些被误删的文档后 怎么找回呢 根本不知道从何入手的小伙伴不用担心 因为办法总比困难多多 下面就让小编为大家分享word文档恢复的方法 方法均以win10系统为例进行操作 大家跟着操作将其恢
  • android.content.res.Resources$NotFoundException: String resource ID #0x1

    在Android开发中如果出现android content res Resources NotFoundException String resource ID 0x1这样的错误 你想也不用想 一定是Textview控件显示数据出了问题
  • 某公众号登录加密(webpack)

    前言 随手记 1 本文章仅作学习参考使用 不做其他使用 网站 aHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tLw 输入密码 分析抓包信息 如下 可以初步判断是一个md5的密文数据 使用全局搜索Search定位到加密位置下断
  • 使用国内镜像源在线安装QT Mac M1

    参考 使用国内镜像源在线安装QT 2023 3 25更新 qt国内镜像 Iotfsd的博客 CSDN博客 网上搜了一些资料 大多数建议用fiddler代理 Mac M1操作不起来 看到上述windows的方法 尝试了一下 运气很好成功了 大
  • 闭环系统的零极点图判定稳定性_系统的稳定性判别

    pzmap 函数可以绘制连续系统在复平面内的零极点图 其调用格式如下 p z pamap num den 或 p z pzmap A B C D 或 p z pzmap p z 其中列向量 p 为系统的极点 列向量 z 为系统的零点 num
  • SQLilabs的第20关(HTTP请求头-Cookie)——报错注入

    1 判断闭合方式 我们在cookie的后面加上一个 返回页面如下 我们再将 改成 返回页面如下 这说明闭合方式是 2 确定注入方式 我们在判断闭合方式时发现 该网站会返回报错信息 又没有回显 因此适合使用报错注入 3 爆破数据库名 用户名
  • opencv中morphologyEx()函数

    opencv中morphologyEx函数 函数原型 参数解释 例子 相关函数 参考博客 函数原型 CV EXPORTS W void morphologyEx InputArray src OutputArray dst int op I
  • pnpm 构建 Monorepo workspace项目

    pnpm 构建 Monorepo 项目 使用背景 因为公司要做的项目比较多 项目之间又会相互依赖 目前分为pc后台 pc商城 uniapp项目等等 所以为了代码的复用和代码的规范提交 决定引入pnpm来创建Monorepo项目 Monore
  • 每次win10开机需要重启一次系统才能进去,第一次停留在启动画面就不动了。

    这是由于部分电脑的主板不支持快速启动造成的 所以把快速启动功能关闭掉即可 具体操作步骤如下 控制面板 硬件和声音 电源选项 选择电源按钮的功能 选择 更改当前不可用的设置 然后把 启用快速启动 推荐 前面的勾去掉 再点击下面的 保存设置 即
  • Python 自动化测试(三): pytest 参数化测试用例构建

    在之前的文章中主要分享了 pytest 的实用特性 接下来讲 Pytest 参数化用例的构建 如果待测试的输入与输出是一组数据 可以把测试数据组织起来用不同的测试数据调用相同的测试方法 参数化顾名思义就是把不同的参数 写到一个集合里 然后程
  • Jetson Nano复制系统和U盘启动【第三部分】

    一 写在前面 第三部分承接第二部分 由于Nano EMMC容量只有16GB大小 安装系统和SDK后 Nano EMMC只剩下1 4GB容量 几乎没有空间安装其它软件 第三部分的主要内容是将Nano EMMC系统完全复制到U盘中 并修改Nan
  • 经验模式分解(EMD)——简介及Matlab工具箱安装

    最近在做脑电信号分析 在导师的建议下学习了一点经验模式分解 下面简称EMD 的皮毛 期间也是遇到了很多问题 在这里整理出来 一是为了自己备忘 二是为了能尽量帮到有需要的朋友 一 EMD简介 经验模态分解 Empirical Mode Dec
  • Oracle数据库 SQL Plus 命令使用指南

    熟悉oracle的朋友都知道 SQL PLUS是一个重要的和ORACLE打交道的工具 SQL PLUS本身有很多命令 可以帮助我们做很多事情 包括产生一些规格化的报表 提供人机交互等等 下面 我就简单地说明一下 供大家参考 一 帮助命令 H
  • Java有哪些基本数据类型?

    在Java中 有8种基本数据类型 它们分为两种类型 值类型 Primitive types byte 字节型 占用1个字节 表示范围为 128 127 short 短整型 占用2个字节 表示范围为 32768 32767 int 整型 占用
  • Spring Boot 框架总结

    Spring Boot 框架总结 1 springboot的引言 Spring Boot是由Pivotal团队提供的全新框架 其设计目的是用来简化Spring应用的 初始搭建以及开发过程 该框架使用了特定的方式来进行配置 从而使开发人员不
  • SAP S4 FI后台详细配置教程- PART5 (应收帐目和应付帐目配置篇)

    SAP S4 FI后台详细配置教程 PART5 应收帐目和应付帐目配置篇 1 客户 1 1 定义客户科目组 概念功能说明 客户是按照账户组来管理的 可以通过定义客户科目组来进行区 如一般客户 集团内客户 一 次性客户等 客户主数据信息分三个
  • hive add jar 报java.net.UnknownHostException: user错误

    hive gt add jar hdfs mypath myjar jar java net UnknownHostException user Query returned non zero code 1 cause java net U
  • v3s 荔枝派zero开发板 添加 ov2640 摄像头(一)

    1 准备 储备知识 1 DVP是并口传输 速度较慢 传输的带宽低 使用需要PCLK sensor输出时钟 MCLK XCLK 外部时钟输入 VSYNC 场同步 HSYNC 行同步 D 0 11 并口数据 可以是8 10 12bit数据位数大
  • LA@n维向量@解析几何向量和线性代数向量

    文章目录 概念 n维向量 向量类型 实向量和复向量 行向量和列向量 行列向量的转换 特殊向量 向量运算 矩阵的向量分块 解析几何向量和线性代数向量 向量空间 n n n维向量空间
  • JSONObject详解

    JSONObject只是一种数据结构 可以理解为JSON格式的数据结构 key value 结构 可以使用put方法给json对象添加元素 JSONObject可以很方便的转换成字符串 也可以很方便的把其他对象转换成JSONObject对象