-
java如何解析多层json5
有个json数据,如何解析。
{'name':'111','child':[{'name':'222','child':[{'name':'333'}]},{'name':'2221'}]}2012年9月04日 21:13
3个答案 按时间排序 按投票排序
-
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
-
推荐 阿里巴巴 温少开源的 史上最快的 json包 ,fastjson :
http://code.alibabatech.com/wiki/display/FastJSON/Examples
2012年9月04日 22:30
相关推荐
Java中解析JSON数据主要依赖于一些库,如org.json库(包含JSONObject和JSONArray类)。 在Java中,解析JSON数据的步骤通常分为以下几个部分: 1. **导入相关库**:首先,你需要在项目中引入JSON库。如果是使用...
总之,Fastjson是Java开发中处理JSON数据的理想选择,其强大的功能和高效的性能使得它可以轻松应对各种复杂的JSON解析和序列化任务。通过`JSONTest`这样的示例代码,我们可以更好地理解和掌握如何利用Fastjson进行...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Web开发中,JSON常用于前后端数据交互,因为它的结构与JavaScript对象非常相似,使得在JavaScript...
通过以上步骤,我们可以高效地将多层集合嵌套的JSON数据转换为Java对象,方便在Java程序中进行处理和操作。这种方法在实际开发中非常常见,特别是在处理来自Web服务、API接口或其他系统的JSON数据时。熟练掌握JSON...
在Java中,我们可以使用多种库来解析和操作JSON,如Jackson、Gson、org.json等。这里以Jackson库为例,因为它提供了强大的功能和灵活性。Jackson库的主要类包括`JsonParser`和`ObjectMapper`,它们可以帮助我们将...
在处理JSON时,可能需要将JSON解析得到的数据转换成特定的对象类型,或者将Java对象转换成适合JSON格式的数据,这时候`ezmorph`就可以派上用场。它可以方便地将一种类型的数据转换成另一种类型,比如将字符串转成...
3. **JSON解析基本步骤**: - **创建`ObjectMapper`实例**:`ObjectMapper mapper = new ObjectMapper();` - **读取JSON字符串**:你可以从文件、网络流或字符串中读取JSON数据。 ```java String jsonString = ...
本文将详细介绍如何将JSON字符串直接转换为Java对象,特别是涉及到多层List集合的情况。在本例中,我们将使用`net.sf.json.JSONObject`类来实现这一功能。 首先,确保你的项目中已经引入了必要的库。在使用`...
标题和描述提及的是将JSON字符串转换为Java对象,特别是涉及多层嵌套和List集合的情况。这在处理复杂数据结构时非常常见,比如服务器返回的响应可能包含嵌套的对象和数组。下面我们将详细介绍如何使用Jackson库来...
在java开发中常需要将ResultSet结果集转化为json格式以实现与客服端实现数据交互,但是这需要几个包,而且版本也要对应,因此我收集了全部的包,并测试可以运行,放在这里供大家下载。包括:commons-beanutils-1.7.0...
于是参照网上的网上的方法使用谷歌的gson利用递归的实现了多层json转换为单层的json。如 {"code":200, "message":"ok", "data":"{\"id\":131,\"appId\":6,\"versionCode\":6014000}"} 转换为: { "code": 200, ...
在Java开发中,数据交换和存储常常涉及到JSON(JavaScript Object Notation)格式,因为它轻量级、易读写且被广泛支持。`net.sf.json.JSONObject`是开源库Apache Commons的一个组件,提供了Java对象与JSON对象之间的...
在Java编程中,多层嵌套循环是一种常见的数据处理方式,尤其在处理具有层次关系的数据时,例如构建或解析父子级结构。在这种场景下,我们可能需要遍历多个层级的数据,以便进行转换、操作或者存储到数据库中。下面将...
如果需要处理嵌套的JSON结构,那么需要递归处理或者使用更复杂的解析库,如Jackson或Gson,它们提供了更强大的JSON操作功能。 在实际开发中,确保正确导入了相应的库,例如org.json库,这是实现这个功能的关键。在...
在Java中,常用的JSON解析库是org.json库,它提供了JSONObject和JSONArray类,可以用来解析JSON对象和数组。但是,如果JSON结构的层数不固定,就需要编写额外的解析逻辑来处理这种复杂情况。 正则表达式(Regular ...
Fastjson是阿里巴巴开源的一个高性能的JSON库,它提供了非常丰富的功能,包括JSON与Java对象之间的相互转换,以及JSON的解析和生成。在这个场景中,Fastjson可能被用来解析输入的JSON字符串,将它转换成一个`...
总结来说,SHA256withRSA是Java中一种强大的安全机制,结合了SHA-256的哈希功能和RSA的非对称加密特性,提供签名、验签、加密和解密功能,保障了JSON数据在传输过程中的安全性。"JAVA-SHA256withRSA.java"文件中的...
JSON-RPC for Java是一种基于JSON(JavaScript Object Notation)协议的远程过程调用(Remote Procedure Call)框架,它允许客户端通过网络调用服务器上的方法,实现了客户端与服务器端的轻量级通信。本文将详细解释...
本工程用于研究Java对象和集合与Json之间的互相转换 本工程编码方式:UTF-8 注意:由于User类中为方便生成User实例创建了有参的User构造方法,所以也要创建无参的构造方法,否则将出现如本工程图01.jpg所示的异常...
转换后的JSON数据可以轻松地被JavaScript或Python的JSON库解析,进而用于数据分析、地图绘制或其他应用程序。对于开发人员来说,这大大降低了处理GRIB2数据的门槛,特别是对于不熟悉GRIB2编码的用户。 值得注意的是...