`

JSON详细学习之JSONObject in JAVA

阅读更多

一、JAR包简介

      要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:

      1.commons-lang.jar

      2.commons-beanutils.jar

      3.commons-collections.jar

      4.commons-logging.jar 

      5.ezmorph.jar

      6.json-lib-2.2.2-jdk15.jar

      

二、JSONObject对象使用

     JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。

 

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JSONObjectSample {
	
	//创建JSONObject对象
	private static JSONObject createJSONObject(){
		JSONObject jsonObject = new JSONObject();
		jsonObject.put("name", "kevin");
		jsonObject.put("Max.score", new Integer(100));
		jsonObject.put("Min.score", new Integer(50));
		jsonObject.put("nickname", "picglet");
		return jsonObject;
	}
	public static void main(String[] args) {
		JSONObject jsonObject = JSONObjectSample.createJSONObject();
		//输出jsonobject对象
		System.out.println("jsonObject==>"+jsonObject);
		
		//判读输出对象的类型
		boolean isArray = jsonObject.isArray();
		boolean isEmpty = jsonObject.isEmpty();
		boolean isNullObject = jsonObject.isNullObject();
		System.out.println("isArray:"+isArray+" isEmpty:"+isEmpty+" isNullObject:"+isNullObject);
		
		//添加属性
		jsonObject.element("address", "swap lake");
		System.out.println("添加属性后的对象==>"+jsonObject);
		
		//返回一个JSONArray对象
		JSONArray jsonArray = new JSONArray();
		jsonArray.add(0, "this is a jsonArray value");
		jsonArray.add(1,"another jsonArray value");
		jsonObject.element("jsonArray", jsonArray);
		JSONArray array = jsonObject.getJSONArray("jsonArray");
		System.out.println("返回一个JSONArray对象:"+array);
		//添加JSONArray后的值
		//{"name":"kevin","Max.score":100,"Min.score":50,"nickname":"picglet","address":"swap lake",
		//"jsonArray":["this is a jsonArray value","another jsonArray value"]}
		System.out.println(jsonObject);
		
		//根据key返回一个字符串
		String jsonString = jsonObject.getString("name");
		System.out.println("jsonString==>"+jsonString);
	}
}

 

 得到JSONObject对象后我们就可以使用它的方法了,可以查看其API,我给出一个在线的API

 

    http://json-lib.sourceforge.net/apidocs/jdk15/index.html

  

JSONArray的方法测试可以类似进行

 

 

分享到:
评论
13 楼 always-missing 2010-07-13  
引用
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory


你缺少commons-logging.jar这个jar包
12 楼 yuyue618 2010-07-09  
楼上的 你jar不全啊. 找不到org/apache/commons/logging/LogFactory
11 楼 spp_1987 2010-07-09  
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at net.sf.json.AbstractJSON.<clinit>(AbstractJSON.java:54)
at com.test.JsonObjectSample.createJsonObj(JsonObjectSample.java:11)
at com.test.JsonObjectSample.main(JsonObjectSample.java:20)

楼主 报这个错误 是为什么啊 。我复制了你的代码.. jar包名字一样,但是我项目里jar包 有数字
10 楼 spp_1987 2010-07-09  
现在什么也不会, 学习中。。。。。。。。。。。。。
9 楼 janwen 2010-02-02  
dieslrae 写道
貌似gson比json-lib的效率高很多呀

怎么保证顺序啊?
8 楼 dieslrae 2009-12-31  
貌似gson比json-lib的效率高很多呀
7 楼 風一樣的男子 2009-12-29  
lyy3323 写道
楼主有JSON的源代码没,最近正在写这个。

源码可以去官网down的啊
6 楼 lyy3323 2009-12-29  
楼主有JSON的源代码没,最近正在写这个。
5 楼 pan_java 2009-12-28  
http://pan-java.iteye.com/admin/blogs/484519
我之前写也过类似的工具.

不过经常写一些可以学到很多东西.

大家也不用评新手贴,这要很打击人了,起码别人学会了在工作运用自己的知识写工具解决问题.

4 楼 tokyo2006 2009-12-28  
我也用的flexjson
3 楼 hyanqing1 2009-12-28  
我用的是FlexJSON,我一直再用
2 楼 always-missing 2009-12-27  
thiner 写道
楼主,GOOGLE有个完整而优雅的JSON包,叫GSON。
http://code.google.com/p/google-gson/

thanks 
1 楼 thiner 2009-12-27  
楼主,GOOGLE有个完整而优雅的JSON包,叫GSON。
http://code.google.com/p/google-gson/

相关推荐

    Json详细学习in Java

    通过深入学习这三种技术,开发者可以更好地理解JSON在Java中的应用,并根据项目需求灵活选择合适的方法来处理JSON数据。这些技能对于任何Java Web开发者来说都是必不可少的。在提供的压缩包文件中,可能包含了示例...

    json in java.rar

    JSON in Java.htm文件可能包含有关这些库的详细教程,包括如何处理数组、嵌套对象、转换复杂类型的示例,以及如何自定义序列化和反序列化过程。而JSON in Java.files可能包含更多的代码示例或相关的辅助资源。 学习...

    JSON example in Java

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,但也使用了类似于C家族语言(包括Java)的习惯,这使得它对人类可读且易于编写,同时也易于机器解析和生成。...

    xml 转 jsonObject

    下面我们将详细讨论如何在Java中实现这个转换过程。 首先,我们需要引入必要的库。Java标准库并没有内置XML到JSON的转换功能,所以我们通常会借助第三方库,如Jackson或Gson。这里我们以Jackson为例,因为它提供了...

    java 获取json网页数据

    在Java编程中,获取JSON网页数据是常见的任务,特别是在处理Web API或者进行数据抓取时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和高效而广泛被采用。本实例将深入讲解如何使用...

    Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject,是因为缺少java-json.jar-附件资源

    Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject,是因为缺少java-json.jar-附件资源

    googleGson JsonObject json转换包

    包含以下java源文件: com.google.gson.DefaultDateTypeAdapter.class com.google.gson.ExclusionStrategy.class com.google.gson.FieldAttributes.class com.google.gson.FieldNamingPolicy.class ...

    Json.zip_JSON_java解析json

    JSON中的对象和数组可以通过`@JsonProperty`注解和`@JsonArray`、`@JsonObject`等注解进行映射。对于嵌套的对象,可以定义对应的Java类,并在字段上添加注解。 6. **类型转换和自定义序列化/反序列化** Jackson...

    java操作JSON.zip

    首先,`org.json`是由JSON.org提供的一个轻量级的Java API,它主要提供了JSONObject、JSONArray、JSONString、JSONTokener等类,用于解析和生成JSON。例如,你可以使用JSONObject来创建一个JSON对象: ```java ...

    首字母大写的json串转为javabean实例

    在Java编程中,将JSON字符串转换为JavaBean实例是一个常见的任务,特别是在处理Web服务或API交互时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,而JavaBean是Java中的一种对象模型,用于封装...

    java返回json数据与ios/安卓数据传输

    本文将详细讲解如何使用Java作为后台语言来构建返回JSON数据的接口,以供iOS和Android客户端进行数据交换。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其易于人阅读和编写,同时也易于机器...

    从互联网获取IP的地区(JSON格式转java对象)

    2. **JSON解析**:使用JSON库(如`org.json`、Gson或Jackson)将接收到的JSON数据解析为Java对象。 3. **API调用**:理解并正确使用IP Geolocation服务的API接口,包括API URL、请求参数和密钥管理。 4. **错误处理*...

    java-json.jar

    sqoop1 import 时报错Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject。下载后,然后放到sqoop/lib目录即可。

    javaWeb添加json支持需要的jar文件

    以下是关于如何在Java Web项目中添加JSON支持以及涉及的jar文件的详细说明。 1. **什么是JSON?** JSON是一种基于文本的数据格式,易于人阅读和编写,同时也易于机器解析和生成。它的语法结构与JavaScript对象类似...

    java通过url调用接口

    `json-lib`是一个流行的JSON库,它可以将Java对象转换为JSON字符串,反之亦然。首先,确保已添加json-lib的依赖,如`json-lib-2.3-jdk15.jar`。然后,可以使用`net.sf.json.JSONObject`或`JSONArray`类来解析和操作...

    快速访问json数据

    例如,Python的`json`模块提供了`loads()`方法,Java的`org.json`库有`JSONObject`和`JSONArray`类。 7. 安全注意事项 JSON注入是安全问题之一,开发者应确保接收的JSON数据来源可信,并在必要时进行转义处理,...

    Json网络解析例子

    JSON(JavaScript Object ...在"Json网络解析例子"的项目中,"MyText"可能是包含示例代码或详细步骤的文本文件,你可以打开这个文件查看具体实现。通过学习这个例子,你应该能够掌握如何在实际项目中处理JSON网络数据。

    java发送http/https请求(get/post)Demo,亲测可用

    这里我们将深入探讨如何使用Java发送GET和POST请求,以及处理JSON数据。 首先,让我们关注GET请求。GET请求主要用于从服务器获取资源,其参数通常包含在URL中。在Java中,可以使用`HttpURLConnection`类或者第三方...

    android本地读取json源代码

    本文将详细讲解如何在Android中实现这一功能,包括解析JSON数据和使用这些数据来填充UI。 首先,我们需要在项目的res/raw目录下存放JSON文件。此目录专门用于存储应用程序的原始数据,如音频、视频、文本文件等。...

Global site tag (gtag.js) - Google Analytics