在Java开发互联网应用系统的过程中,数据的传递与转换是经常使用的,我在开发的过程中用的最多的是google的Gson,现就其使用的过程中的注意点做一个总结(当然首先要先去下载Gson的jar包,附件提供相应的jar包)。
1、在将Json字符串转换成Json对象,可以做一个静态的装换类,方便在系统开发过程中使用。public class JsonFormat {
private static JsonParser jsonParser=new JsonParser();
public static JsonObject String2Object(String strJson) {;
return jsonParser.parse(strJson).getAsJsonObject();
}
}
public static JsonArray String2Array(String strJson) {
return jsonParser.parse(strJson).getAsJsonArray();
}
JsonObject JsonObject =this.String2Object(new GsonBuilder().create().toJson(egg));//将java(POJO对象)转换成Json对象
2、在实际开发的过程中,Json组织形式会千差万别,这个时候在解析Json对象(eg:jsonObject)的时候就需要根据实际的Json对象调用相应的方法解析。经常使用的方法有:
(1)Json中包含子元素为具体的key-value值:
jsonObject.get("key").getAsString();
(2)Json中包含子元素为数组:
jsonObject.get("key1").getAsJsonArray().get(int i).getAsJsonObject().get("key2").getAsString();//key为Json中的key,就能得到该key所对应的value值;int i比如取数组的第一个,就将参数设置为0
(3)Json中包含子元素为嵌套Json:
jsonObject.get("key1").getAsJsonObject().get("key2").getAsString()
当前,还有其他更复杂的情况,但基本套路是在这些基础之上的。
分享到:
相关推荐
例如,以下是一个简单的示例,展示了如何使用Gson的`JsonObject`和`JsonArray`: ```java import com.google.gson.JsonArray; import com.google.gson.JsonObject; public class GsonExample { public static ...
com.google.gson.JsonObject.class com.google.gson.JsonParseException.class com.google.gson.JsonParser.class com.google.gson.JsonPrimitive.class com.google.gson.JsonSerializationContext.class ...
总的来说,解决“无法使用JsonObject”的问题,关键在于确保项目正确引用了Gson库。添加了所需的jar包后,你就可以充分利用JsonObject和其他Gson类来方便地处理JSON数据了。记得定期更新库至最新版本,以获取最新的...
Gson则是Google提供的一个用于Java对象与JSON数据之间互相转换的库,而JsonObject是JSON数据模型的一个关键部分。本教程将详细介绍如何使用Volley进行网络请求,如何封装Volley以提高复用性,以及如何配合Gson处理...
Java 中序列化 NotSerializableException 问题解决办法 Java 中序列化 NotSerializableException 问题是 ...我们还讨论了什么时候需要标记 transient,以及如何正确地使用 transient 关键字。希望本文能够帮助到大家。
本文将详细介绍如何在Android中使用Gson库和JSONObject来解析JSON数据。 ### 1. JSON对象和数组 JSON对象以大括号`{}`包裹,每个键值对以逗号分隔,键必须是字符串,值可以是任意JSON支持的数据类型。例如: ```...
这种处理方式不需要依赖别的jar包,而且使用方法非常简单: List<String> list = new ArrayList(); list.add("zhangsan"); list.add("lisi"); list.add("wangwu"); Gson gson = new Gson(); String json = ...
2. **检查代码**:检查所有使用JsonObject和keySet的地方,确保它们的使用符合Gson的API规范。 3. **异常处理**:在调用keySet之前,先检查JsonObject是否为空,避免空指针异常。 4. **查阅官方文档**:了解Gson的...
在Java开发中,数据交换和存储常常涉及到JSON格式。JSON(JavaScript Object Notation)是一种轻...在`hsun_gson`这个压缩包文件中,可能包含了示例源码和Gson的jar包,你可以参考这些资源进一步学习和实践Gson的使用。
在这个版本中,我们使用了`Gson`的`fromJson`方法将`JsonObject`转换为`HashMap`。这样,所有的动态key都会被保存到`HashMap`中,便于后续操作。 总结,Gson库提供了处理动态未知key JSON数据的能力。通过`...
在Java编程语言中,`JSONObject` 是一个广泛使用的类,它来自 `org.json` 包,用于处理JSON(JavaScript Object Notation)数据。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在...
在这篇文章中,我们将深入探讨`JSONObject` 所需的六个核心包以及GSON库的使用。 1. **org.json.JSONObject** `JSONObject` 是`org.json`包中的主要类,它提供了创建、解析和操作JSON对象的功能。例如,你可以创建...
Gson关于对象与json的相互转换
一旦添加了依赖,你就可以在项目中自由地使用`JsonObject`和其他Gson提供的类了。例如,你可以将Java对象转换为JSON字符串: ```java Person person = new Person("John", 30); Gson gson = new Gson(); String ...
用户列表对象,使用JSONObject jsonStu = JSONObject.fromObject(list); 就会报错,因为对于嵌套类型的json它是解释不出来的,这时就需要用到com.google.gson.Gson.jar了。资源中提供了jar包与代码示例,一句代码...
### gson使用详解 #### 一、简介 Google的Gson库是用于实现Java对象与JSON数据之间相互转换的强大工具。相较于其他同类库如org.json和json-lib,Gson提供了更为简洁且灵活的方法来处理复杂的对象结构,特别是对于...
JsonObject是Java编程语言中用于处理JSON(JavaScript Object Notation)数据的一个重要类,它来自于Gson库。Gson是Google提供的一个开源库,主要用于在Java对象和JSON数据之间进行映射,使得Java对象可以轻松地转换...
JsonObject/Gson 开发所需jar包 v
在Java开发环境中,使用GSON通常需要导入以下关键的头文件: ```java import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParser;...