0 0

java如何解析多层json5

有个json数据,如何解析。

{'name':'111','child':[{'name':'222','child':[{'name':'333'}]},{'name':'2221'}]}
2012年9月04日 21:13

3个答案 按时间排序 按投票排序

0 0

1. 使用标准的Json对象,如org.json.JSONObject json = new org.json.JSONObject(yourJsonString);然后通过get(keyString)逐个解析
2. 构造一个类MyObject,根据你提出的问题,其中添加 String name,List<MyObject> child, 两个属性,增加getter setter 方法,通过com.google.gson.Gson进行解析。步骤如下:
String jsonStr = "{'name':'111','child':[{'name':'222','child':[{'name':'333'}]},{'name':'2221'}]}";
Gson gson = new Gson();
MyObject obj = gson.fromJson(jsonStr,MyObject.class);

import java.util.List;

import com.google.gson.Gson;

public class MyObject {
	String name;
	List<MyObject> child;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public List<MyObject> getChild() {
		return child;
	}
	public void setChild(List<MyObject> child) {
		this.child = child;
	}
	
	public static void main(String[] args) {
		 String jsonStr = "{'name':'111','child':[{'name':'222','child':[{'name':'333'}]},{'name':'2221'}]}";
		 Gson gson = new Gson();
		 MyObject obj = gson.fromJson(jsonStr,MyObject.class);
		 System.out.println(obj.getChild().get(0).getName()); // --222
		 System.out.println(obj.getChild().get(1).getName()); // --222
		 System.out.println(obj.getChild().get(0).getChild().get(0).getName()); // --333
	}
}

2012年9月06日 12:00
0 0

推荐 阿里巴巴  温少开源的 史上最快的  json包 ,fastjson :

http://code.alibabatech.com/wiki/display/FastJSON/Examples

2012年9月04日 22:30
0 0

Json-lib  或者 jackson这个JSON解析工具

2012年9月04日 21:14

相关推荐

    java解析json数据

    Java中解析JSON数据主要依赖于一些库,如org.json库(包含JSONObject和JSONArray类)。 在Java中,解析JSON数据的步骤通常分为以下几个部分: 1. **导入相关库**:首先,你需要在项目中引入JSON库。如果是使用...

    java FASTJSON 解析复杂JSON实例源码

    总之,Fastjson是Java开发中处理JSON数据的理想选择,其强大的功能和高效的性能使得它可以轻松应对各种复杂的JSON解析和序列化任务。通过`JSONTest`这样的示例代码,我们可以更好地理解和掌握如何利用Fastjson进行...

    多层集合的JSON串拼接

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Web开发中,JSON常用于前后端数据交互,因为它的结构与JavaScript对象非常相似,使得在JavaScript...

    多层集合嵌套的JSON数据转化为Java对象(src.zip)

    通过以上步骤,我们可以高效地将多层集合嵌套的JSON数据转换为Java对象,方便在Java程序中进行处理和操作。这种方法在实际开发中非常常见,特别是在处理来自Web服务、API接口或其他系统的JSON数据时。熟练掌握JSON...

    json转对象(java 多级嵌套)

    在Java中,我们可以使用多种库来解析和操作JSON,如Jackson、Gson、org.json等。这里以Jackson库为例,因为它提供了强大的功能和灵活性。Jackson库的主要类包括`JsonParser`和`ObjectMapper`,它们可以帮助我们将...

    JAVA-JSON工具转换类

    在处理JSON时,可能需要将JSON解析得到的数据转换成特定的对象类型,或者将Java对象转换成适合JSON格式的数据,这时候`ezmorph`就可以派上用场。它可以方便地将一种类型的数据转换成另一种类型,比如将字符串转成...

    JAVA 解析 JSON 数据(包齐全)

    3. **JSON解析基本步骤**: - **创建`ObjectMapper`实例**:`ObjectMapper mapper = new ObjectMapper();` - **读取JSON字符串**:你可以从文件、网络流或字符串中读取JSON数据。 ```java String jsonString = ...

    Java中Json字符串直接转换为对象的方法(包括多层List集合)

    本文将详细介绍如何将JSON字符串直接转换为Java对象,特别是涉及到多层List集合的情况。在本例中,我们将使用`net.sf.json.JSONObject`类来实现这一功能。 首先,确保你的项目中已经引入了必要的库。在使用`...

    解析Json字符串直接转换为对象(包括多层List集合 嵌套)所用jar包

    标题和描述提及的是将JSON字符串转换为Java对象,特别是涉及多层嵌套和List集合的情况。这在处理复杂数据结构时非常常见,比如服务器返回的响应可能包含嵌套的对象和数组。下面我们将详细介绍如何使用Jackson库来...

    java ResultSet 与 json互转所需要的全部包资源

    在java开发中常需要将ResultSet结果集转化为json格式以实现与客服端实现数据交互,但是这需要几个包,而且版本也要对应,因此我收集了全部的包,并测试可以运行,放在这里供大家下载。包括:commons-beanutils-1.7.0...

    json2Map:多层json转换为Map再转换为单层json

    于是参照网上的网上的方法使用谷歌的gson利用递归的实现了多层json转换为单层的json。如 {"code":200, "message":"ok", "data":"{\"id\":131,\"appId\":6,\"versionCode\":6014000}"} 转换为: { "code": 200, ...

    用于java对象与json对象间的相互转换(net.sf.json.JSONObject)

    在Java开发中,数据交换和存储常常涉及到JSON(JavaScript Object Notation)格式,因为它轻量级、易读写且被广泛支持。`net.sf.json.JSONObject`是开源库Apache Commons的一个组件,提供了Java对象与JSON对象之间的...

    java实现多层嵌套循环参数转换

    在Java编程中,多层嵌套循环是一种常见的数据处理方式,尤其在处理具有层次关系的数据时,例如构建或解析父子级结构。在这种场景下,我们可能需要遍历多个层级的数据,以便进行转换、操作或者存储到数据库中。下面将...

    java中对单层json进行key字母排序

    如果需要处理嵌套的JSON结构,那么需要递归处理或者使用更复杂的解析库,如Jackson或Gson,它们提供了更强大的JSON操作功能。 在实际开发中,确保正确导入了相应的库,例如org.json库,这是实现这个功能的关键。在...

    java解析任意层数json字符串的方法

    在Java中,常用的JSON解析库是org.json库,它提供了JSONObject和JSONArray类,可以用来解析JSON对象和数组。但是,如果JSON结构的层数不固定,就需要编写额外的解析逻辑来处理这种复杂情况。 正则表达式(Regular ...

    工具类,根据给定长度,使用递归的方式拆分一个json成为多个json组成的列表

    Fastjson是阿里巴巴开源的一个高性能的JSON库,它提供了非常丰富的功能,包括JSON与Java对象之间的相互转换,以及JSON的解析和生成。在这个场景中,Fastjson可能被用来解析输入的JSON字符串,将它转换成一个`...

    java SHA256withRSA,json数据证书加签验签

    总结来说,SHA256withRSA是Java中一种强大的安全机制,结合了SHA-256的哈希功能和RSA的非对称加密特性,提供签名、验签、加密和解密功能,保障了JSON数据在传输过程中的安全性。"JAVA-SHA256withRSA.java"文件中的...

    java 使用json-rpc

    JSON-RPC for Java是一种基于JSON(JavaScript Object Notation)协议的远程过程调用(Remote Procedure Call)框架,它允许客户端通过网络调用服务器上的方法,实现了客户端与服务器端的轻量级通信。本文将详细解释...

    Java对象和集合与Json之间的互相转换

    本工程用于研究Java对象和集合与Json之间的互相转换 本工程编码方式:UTF-8 注意:由于User类中为方便生成User实例创建了有参的User构造方法,所以也要创建无参的构造方法,否则将出现如本工程图01.jpg所示的异常...

    GRIB2 数据 转 JSON

    转换后的JSON数据可以轻松地被JavaScript或Python的JSON库解析,进而用于数据分析、地图绘制或其他应用程序。对于开发人员来说,这大大降低了处理GRIB2数据的门槛,特别是对于不熟悉GRIB2编码的用户。 值得注意的是...

Global site tag (gtag.js) - Google Analytics