JSONObject使用方法及详解

article/2025/9/14 18:18:27

最近自己负责的项目涉及到JSON数据的解析,所以在学习之后讲讲自己的认识及见解,希望对大家有帮助.

首先我们来讲讲JSONObject,JSON的数据格式如下:

[ {  name1 : { name2: { name3: ' value1' , name4: ' value2 ' }  }  }  , { }  ]

从外到里看,例子中就是一个数组,数组里面是两个json格式的字符串,取出name4值过程步骤:

1,将以上字符串转换为JSONArray对象;

2,取出对象的第一项,JSONObject对象;

3,取出name1的值JSONObject对象;

4,取出name2的值JSONObject对象;

5,取出name4的值value2。

    

示例中json数组格式的字符串可以通过方法直接转换为JSONArray的格式:JSONArray.fromObject(String)

JSONArray getJsonArray=JSONArray.fromObject(arrayStr);//将结果转换成JSONArray对象的形式  
JSONObject getJsonObj = getJsonArray.getJSONObject(0);//获取json数组中的第一项  
String result=getJsonObj.getJSONObject("name1").getJSONObject("name2").getJSONObject("name4");

二.

1,JSONObject

 json对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value}

2,JSONArray

  json数组,使用中括号[ ],只不过数组里面的项也是json键值对格式的

  Json对象中添加的是键值对,JSONArray中添加的是Json对象

JSONObject Json = new JSONObject();  
JSONArray JsonArray = new JSONArray();  
Json.put("key", "value");//JSONObject对象中添加键值对  
JsonArray.add(Json);//将JSONObject对象添加到Json数组中 

三.下面来看看XML和JSON之间的互相转换

question1:后台接受到前台的json格式的字符串怎么处理?

?
1
2
3
4
5
6
7
8
9
public static void jsonToJAVA() {
System.out.println( "json字符串转java代码" );
String jsonStr = "{\"password\":\"\",\"username\":\"张三\"}" ;
JSONObject jsonObj = JSONObject.fromString(jsonStr);
String username = jsonObj.getString( "username" );
String password = jsonObj.optString( "password" );
System.out.println( "json--->java\n username=" + username
+ "\t password=" + password);
}

question2:后台是怎么拼装json格式的字符串?

?
1
2
3
4
5
6
7
public static void javaToJSON() {
System.out.println( "java代码封装为json字符串" );
JSONObject jsonObj = new JSONObject();
jsonObj.put( "username" , "张三" );
jsonObj.put( "password" , "" );
System.out.println( "java--->json \n" + jsonObj.toString());
}

 

question3:json格式的字符串怎么转换为xml格式的字符串?

?
1
2
3
4
5
6
7
8
9
10
public static void jsonToXML() {
System.out.println( "json字符串转xml字符串" );
String jsonStr = "{\"password\":\"\",\"username\":\"张三\"}" ;
JSONObject json = JSONObject.fromString(jsonStr);
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setRootName( "user_info" );
xmlSerializer.setTypeHintsEnabled( false );
String xml = xmlSerializer.write(json);
System.out.println( "json--->xml \n" + xml);
}

 

question4:xml格式的字符串怎么转换为json格式的字符串?

?
1
2
3
4
5
6
public static void xmlToJSON(){
  System.out.println( "xml字符串转json字符串" );
  String xml = "<?xml version=\".\" encoding=\"UTF-\"?><user_info><password></password><username>张三</username></user_info>" ;
  JSON json=XMLSerializer.read(xml);
  System.out.println( "xml--->json \n" +json.toString());
  }

 

question5:javabean怎么转换为json字符串?

?
1
2
3
4
5
6
7
8
public static void javaBeanToJSON() {
  System.out.println( "javabean转json字符串" );
  UserInfo userInfo = new UserInfo();
  userInfo.setUsername( "张三" );
  userInfo.setPassword( "" );
  JSONObject json = JSONObject.fromBean(userInfo);
  System.out.println( "javabean--->json \n" + json.toString());
  }

 




http://chatgpt.dhexx.cn/article/pA3ATIiy.shtml

相关文章

JSON与JAVA数据的转换。JSONObject.fromObject()和JSONObject.toBean()

六个架包&#xff08;666&#xff09; 首先我们系统中要用到JSON解析&#xff0c;所以要引入这六个架包。饱饱 不引入这六个架包的话&#xff0c;使用JSONObject.fromObject 和 SONObject.toBean会报错&#xff0c;而且有的时候编译器不会告诉你是架包缺少的错误哦&#xff…

使用JSONObject解析

一、JSON数据 1、JSON串访问方式&#xff1a; 2、简介 – JSON(JavaScript Object Notation) 是一种轻量级的数据 交换格式。 – JSON 数据的书写格式&#xff1a; " KEY " : " VALUE " JSON 结构有两种结构&#xff1a; 1、对象&#xff08;表的一列&…

JSONObject使用方法详解

1.JSONObject介绍 JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包。 2.下载jar包 http://xiazai.jb51.net/201707/yuanma/lib_jb51.rar 提供了除JSONObject的jar之外依赖的其他6个jar包&#xff0c;一共7个jar文件 说明&#xff1a;因为工作…

JSONObject使用方法

1.JSONObject介绍 JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包。 2.下载jar包 http://files.cnblogs.com/java-pan/lib.rar 提供了除JSONObject的jar之外依赖的其他6个jar包&#xff0c;一共7个jar文件 说明&#xff1a;因为工作中项目…

JSONObject类

&#xff08;1&#xff09;是什么&#xff1f; 阿里巴巴提供的一个json快速转换工具类&#xff0c;实现了Map接口&#xff0c;通过Key Value形式存储数据&#xff0c;初始化大小为16&#xff0c;有参构造方法需要传入一个Map。 项目中实际用途&#xff1a; 用于Json转具体的Ob…

JSON, JSONObject, JsonObject

JSON是一个抽象类 JSONObject是一个继承自JSON的类 JSON,JSONObject 和 JsonObject 1. JAR 包不同&#xff0c;对于可以调用的内置方法函数也不同 JSONObject属于 org.json.JSONObject包&#xff0c; JsonObject 属于 com.google.gson.JsonObject包 2. 存储方式不同 JS…

JSONObject

JSONObject JSONObject 介绍 // JSONObject 是一个类 JSONObject jsonObject = new JSONObject(); // JSONObject 只是一种数据结构,可以理解为JSON格式的数据结构(key-value 结构),可以使用put方法给json对象添加元素。 // JSONObject可以很方便的转换成字符串,也…

js构造函数详解

典型的面向对象编程语言&#xff08;比如C和Java&#xff09;&#xff0c;存在“类”&#xff08;class&#xff09;这个概念。所谓“类”就是对象的模板&#xff0c;对象就是“类”的实例。但是&#xff0c;在JavaScript语言的对象体系&#xff0c;不是基于“类”的&#xff0…

JavaScript构造函数

什么是构造函数 构造函数&#xff08;Constructor&#xff09;的创建方式和普通函数一样。但通常首字母进行大写&#xff0c;用于和普通函数区分。 但是当一个函数创建好以后&#xff0c;我们并不知道它是不是构造函数&#xff08;即使函数名的首字母为大写&#xff09;。只有…

C#构造函数

在C#中&#xff0c;构造函数就是与类具有相同名称的成员函数&#xff0c;通常使用类中的构造函数来初始化类的成员属性。C#中的构造函数有三种&#xff1a; 第一种&#xff1a;实例构造函数。 当使用new关键字创建类的对象时&#xff0c;可以使用实例构造函数来初始化和创建类…

构造函数与拷贝构造函数

拷贝构造函数和构造函数不能分开说&#xff0c;他们都是初始化对象的一种方法。但是我们这里用构造函数辅助说明拷贝构造函数&#xff0c;主要说说拷贝构造函数的声明&#xff0c;用途和使用注意事项。 众所周知&#xff0c;构造函数是一个初始化类对象的函数&#xff0c;即使不…

C# 静态构造函数

目录 写在前面语法格式用法与特性主要作用语法特性 关于泛型的测试测试代码运行结果 写在前面 今天在创建WPF自定义控件时&#xff0c;在模板代码中看到了静态构造函数这种写法&#xff0c;说来惭愧&#xff0c;以前在Java用过这种语法&#xff0c;心知C#也应该会有的&#xf…

构造函数详解

构造函数详解 类的6个默认的成员函数 构造函数的概念&#xff1a; 构造函数是一个特殊的成员函数&#xff0c;名字与类名相同&#xff0c;创建类类型对象时由编译器自动调用&#xff0c;保证每个数据成员都有一个合适的初始值&#xff0c;并且在对象的生命周期内只调用一次。…

C++中的指针类型与构造函数,析构函数

1. 指针类型的作用 1.1 指针取出字节 任何类型的指针占用的空间大小都是相同的 &#xff08;32位CPU是4字节&#xff1b;64位CPU是8字节&#xff09; 既然任何类型的指针占用的空间大小都是相同的&#xff0c;为什么指针还需要类型呢&#xff1f; 指针只是指向了一个内存地址…

c++拷贝构造函数

一. 什么是拷贝构造函数 首先对于普通类型的对象来说&#xff0c;它们之间的复制是很简单的&#xff0c;例如&#xff1a; int a 100; int b a; 而类对象与普通对象不同&#xff0c;类对象内部结构一般较为复杂&#xff0c;存在各种成员变量。 下面看一个类对象拷贝的简单…

C++构造函数

文章目录 1 构造函数的定义及特征2 默认构造函数2.1 合成的默认构造函数2.1.1 默认初始化2.1.2 合成的默认构造函数初始化类成员变量的规则2.1.3 有些场合不能使用合成的默认构造函数 2.2 全缺省的默认构造函数&#xff08;参数都为默认实参的构造函数&#xff09; 3 构造函数初…

C++ 构造函数详解

目录 0. 什么是构造函数 1. 默认构造函数 2. 一般构造函数 3. 拷贝构造函数 4. 转换构造函数 5. 移动构造函数 0. 什么是构造函数 在定义类的成员函数的时候&#xff0c;一般的成员函数与普通的全局函数没有太大的区别&#xff0c;在定义函数的时候都需要说明要返回的类…

【C++要笑着学】类的默认成员函数详解 | 构造函数 | 析构函数 | 构造拷贝函数

&#x1f525; &#x1f525; &#x1f525; &#x1f525; &#x1f525; 火速猛戳订阅 &#x1f449; 《C要笑着学》 &#x1f448; 趣味教学博客 &#x1f525; &#x1f525; &#x1f525; &#x1f525; &#x1f525; [ 本篇博客热榜最高排名&#xff1a;7 ] 写在前…

JSF 文档参考

转自&#xff1a;http://blog.csdn.net/ontheway20/article/details/38532241 A4J 用户指南 目录 1. 介绍 2. 开始使用Ajax4jsf 环境需求 下载Ajax4jsf 安装 简单的 AJAX Echo 项目 JSP 页面 数据 Bean faces-config.xml Web.xml 部署 3. Ajax4jsf 框架的基本概念 介绍 结构概…

IDEA 2020.2 部署JSF项目

目录 一、用Glassfish部署JSF项目 1、下载glassfish 2、配置glassfish环境变量 3、修改jdk环境变量 4、测试glassfish是否可以正常启动 5、在IDEA中创建一个JSF项目 6.问题&#xff1a;部分标签元素无法显示 二、用tomcat部署JSF项目 1、新建项目或者模块&#xff0c;…