`

Java中操作Json对象

    博客分类:
  • Java
阅读更多

www.json.org上公布了很多Java下的json解析工具,其中org.json和json-lib比较简单,两者使用上差不多。下面两段源代码是分别使用这两个工具解析和构造JSON的演示程序。

http://nchc.dl.sourceforge.net/sourceforge/json-lib/json-lib-2.2.1-jdk15.jar
(Needs libs below:)
[

  • jakarta commons-lang 2.3
  • jakarta commons-beanutils 1.7.0
  • jakarta commons-collections 3.2
  • jakarta commons-logging 1.1
  • ezmorph 1.0.4

]
这是使用json-lib的程序:
import java.util.HashMap;
import java.util.Map;
import net.sf.json.JSONObject;
public class Test {
     public static void main(String[] args) {
         String json = "{\"name\":\"reiz\"}";
         JSONObject jsonObj = JSONObject.fromObject(json);
         String name = jsonObj.getString("name");
         jsonObj.put("initial", name.substring(0, 1).toUpperCase());
         String[] likes = new String[] { "JavaScript", "Skiing", "Apple Pie" };
         jsonObj.put("likes", likes);
         Map <String, String> ingredients = new HashMap <String, String>();
         ingredients.put("apples", "3kg");
         ingredients.put("sugar", "1kg");
         ingredients.put("pastry", "2.4kg");
         ingredients.put("bestEaten", "outdoors");
         jsonObj.put("ingredients",ingredients);
         System.out.println(jsonObj);
     }
}

http://www.json.org/java/json.zip
这是使用org.json的程序:
import java.util.HashMap;
import java.util.Map;
import org.json.JSONException;
import org.json.JSONObject;
public class Test {
     public static void main(String[] args) throws JSONException {
         String json = "{\"name\":\"reiz\"}";
         JSONObject jsonObj = new JSONObject(json);
         String name = jsonObj.getString("name");
         jsonObj.put("initial", name.substring(0, 1).toUpperCase());
         String[] likes = new String[] { "JavaScript", "Skiing", "Apple Pie" };
         jsonObj.put("likes", likes);
         Map <String, String> ingredients = new HashMap <String, String>();
         ingredients.put("apples", "3kg");
         ingredients.put("sugar", "1kg");
         ingredients.put("pastry", "2.4kg");
         ingredients.put("bestEaten", "outdoors");
         jsonObj.put("ingredients", ingredients);
         System.out.println(jsonObj);
         System.out.println(jsonObj);
     }
}
两者的使用几乎是相同的,但org.json比json-lib要轻量得多,前者没有任何依赖,而后者要依赖ezmorph和commons的lang、logging、beanutils、collections等组件。

分享到:
评论

相关推荐

    使用Java操作JSON字符串对象

    使用Java操作JSON字符串对象,使用Java操作JSON字符串对象

    Java中使用Json

    在Java中,我们可以使用`JSONObject`和`JSONArray`(来自org.json库)来操作JSON数据。例如: ```java JSONObject obj = new JSONObject(); obj.put("name", "John"); obj.put("age", 30); JSONArray array =...

    java操作JSON的例子

    总的来说,Java操作JSON的基本流程包括创建JSON对象、填充数据、读取数据、序列化和反序列化。`org.json`库提供了一系列简便的API,使得在Java中处理JSON变得简单。通过分析`Main.java`的代码,我们可以深入理解这些...

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

    是开源库Apache Commons的一个组件,提供了Java对象与JSON对象之间的转换功能。下面将详细阐述如何使用`JSONObject`进行JSON操作。 ### 1. 解析JSON字符串 当你从服务器获取或从文件读取到一个JSON字符串时,可以...

    JAVA构造json对象的方法

    是一个非常流行的库,用于创建和操作JSON对象。它提供了简单易用的API来处理JSON数据。 ##### 示例代码解析: ```java import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java...

    Java中使用Json的net.sf.json包

    为了在Java中处理JSON数据,开发者通常会使用特定的库,如`net.sf.json`包,这是一个非常实用的JSON库,提供了丰富的功能来创建、解析和操作JSON对象。 `net.sf.json`库主要包含了两个核心类:`JSONObject`和`...

    拷贝JSON对象值进Java Bean对象

    总的来说,将JSON对象转换为Java Bean对象是Java开发中的基础操作,可以通过源码手动实现,也可以借助第三方库如Gson简化工作。理解这个过程对于处理JSON数据和构建RESTful API至关重要。在实际项目中,应根据需求...

    json转对象(java 多级嵌套)

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

    JAVA-JSON工具转换类

    `JsonUtil.java`看起来是一个自定义的工具类,很可能包含了对`json-lib`和`ezmorph`的封装,提供了简洁易用的API供开发者进行JSON操作。可能包含的方法有`toJson()`(将Java对象转换为JSON字符串)、`fromJson()`...

    java中操作json的所有jar包.

    处理JSON在Java中通常涉及到一些特定的库,这些库提供了方便的API来解析、生成、操作JSON对象。本篇文章将详细介绍Java中常用的JSON处理库以及它们的关键功能。 1. **Jackson** Jackson是Java中最受欢迎的JSON库之...

    java解析xml生成json对象

    本项目提供的"解析xml---xml文件转json对象"是一个Java工具类,用于将XML文件解析成JSON对象,便于处理和操作。要使用这个工具,你需要遵循以下步骤: 1. **导入项目**:首先,下载提供的压缩包并解压。将解压后的...

    java处理json对象

    下面将详细介绍如何使用JSON-Lib在Java中处理JSON对象。 首先,为了使用JSON-Lib,你需要将它添加到你的项目依赖中。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;...

    java-对象数组转换为json

    在IT领域,特别是Java编程中,对象数组与JSON之间的转换是一项常见且重要的操作。下面将深入探讨如何在Java中实现对象数组向JSON的转换,并反过来将JSON字符串转换为Java对象数组,同时也会提及一些相关技术和代码...

    java 所有的json包

    - **操作JSON对象**:你可以添加、删除、修改JSON对象的键值对,或者遍历和访问JSON数组的元素。 - **XML和JSON转换**:如果你需要在XML和JSON之间切换,JSONLib提供了方便的API。 除了JSONLib,Java世界中还有...

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

    这个方法只适用于单层JSON对象,即JSON对象中不包含嵌套的JSON对象或数组。如果需要处理嵌套的JSON结构,那么需要递归处理或者使用更复杂的解析库,如Jackson或Gson,它们提供了更强大的JSON操作功能。 在实际开发...

    利用java反射将json字符串转成对象.zip

    在给定的“利用java反射将json字符串转成对象”的主题中,我们将深入探讨如何借助反射机制将JSON字符串转换为Java对象。 首先,我们需要了解JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人...

    Java 中json常用操作所需jar包

    - `remove()`:这个方法用于从JSON对象中移除指定的键及其对应的值。 - `opt()`系列方法:这些方法在键不存在时返回默认值,而不是抛出异常。 5. **JSON格式化和验证** - `prettify()`:这个方法可以将JSON对象...

    Java对Json的一系列操作(构建、json与对象的转换)

    本文将深入探讨Java对JSON的一系列操作,包括如何构建JSON对象,以及如何进行JSON与Java对象之间的转换。 一、JSON对象构建 1. JSON基本类型:JSON主要包含两种基本类型,对象(Object)和数组(Array)。对象以大...

    在JAVA中封装JSON数据

    在Java中,我们可以使用多种库来操作JSON,其中最常用的包括Jackson、Gson和org.json。这里以Jackson为例,介绍如何进行JSON数据的封装: 1. **引入依赖**:在你的项目中,需要添加Jackson的依赖。如果是Maven项目...

    java操作json实例

    例如,获取JSON对象中的特定字段: ```java JsonNode node = mapper.readTree(json); String name = node.get("name").asText(); int age = node.get("age").asInt(); System.out.println(name + " is " + age ...

Global site tag (gtag.js) - Google Analytics