一、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()方法。
Java代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" lk_media="yes" lk_mediaid="lk_juiceapp_mediaPopup_1262010943179" flashvars="clipboard=import%20net.sf.json.JSONArray%3B%0Aimport%20net.sf.json.JSONObject%3B%0A%0Apublic%20class%20JSONObjectSample%20%7B%0A%09%0A%09%2F%2F%E5%88%9B%E5%BB%BAJSONObject%E5%AF%B9%E8%B1%A1%0A%09private%20static%20JSONObject%20createJSONObject()%7B%0A%09%09JSONObject%20jsonObject%20%3D%20new%20JSONObject()%3B%0A%09%09jsonObject.put(%22name%22%2C%20%22kevin%22)%3B%0A%09%09jsonObject.put(%22Max.score%22%2C%20new%20Integer(100))%3B%0A%09%09jsonObject.put(%22Min.score%22%2C%20new%20Integer(50))%3B%0A%09%09jsonObject.put(%22nickname%22%2C%20%22picglet%22)%3B%0A%09%09return%20jsonObject%3B%0A%09%7D%0A%09public%20static%20void%20main(String%5B%5D%20args)%20%7B%0A%09%09JSONObject%20jsonObject%20%3D%20JSONObjectSample.createJSONObject()%3B%0A%09%09%2F%2F%E8%BE%93%E5%87%BAjsonobject%E5%AF%B9%E8%B1%A1%0A%09%09System.out.println(%22jsonObject%3D%3D%3E%22%2BjsonObject)%3B%0A%09%09%0A%09%09%2F%2F%E5%88%A4%E8%AF%BB%E8%BE%93%E5%87%BA%E5%AF%B9%E8%B1%A1%E7%9A%84%E7%B1%BB%E5%9E%8B%0A%09%09boolean%20isArray%20%3D%20jsonObject.isArray()%3B%0A%09%09boolean%20isEmpty%20%3D%20jsonObject.isEmpty()%3B%0A%09%09boolean%20isNullObject%20%3D%20jsonObject.isNullObject()%3B%0A%09%09System.out.println(%22isArray%3A%22%2BisArray%2B%22%20isEmpty%3A%22%2BisEmpty%2B%22%20isNullObject%3A%22%2BisNullObject)%3B%0A%09%09%0A%09%09%2F%2F%E6%B7%BB%E5%8A%A0%E5%B1%9E%E6%80%A7%0A%09%09jsonObject.element(%22address%22%2C%20%22swap%20lake%22)%3B%0A%09%09System.out.println(%22%E6%B7%BB%E5%8A%A0%E5%B1%9E%E6%80%A7%E5%90%8E%E7%9A%84%E5%AF%B9%E8%B1%A1%3D%3D%3E%22%2BjsonObject)%3B%0A%09%09%0A%09%09%2F%2F%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AAJSONArray%E5%AF%B9%E8%B1%A1%0A%09%09JSONArray%20jsonArray%20%3D%20new%20JSONArray()%3B%0A%09%09jsonArray.add(0%2C%20%22this%20is%20a%20jsonArray%20value%22)%3B%0A%09%09jsonArray.add(1%2C%22another%20jsonArray%20value%22)%3B%0A%09%09jsonObject.element(%22jsonArray%22%2C%20jsonArray)%3B%0A%09%09JSONArray%20array%20%3D%20jsonObject.getJSONArray(%22jsonArray%22)%3B%0A%09%09System.out.println(%22%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AAJSONArray%E5%AF%B9%E8%B1%A1%EF%BC%9A%22%2Barray)%3B%0A%09%09%2F%2F%E6%B7%BB%E5%8A%A0JSONArray%E5%90%8E%E7%9A%84%E5%80%BC%0A%09%09%2F%2F%7B%22name%22%3A%22kevin%22%2C%22Max.score%22%3A100%2C%22Min.score%22%3A50%2C%22nickname%22%3A%22picglet%22%2C%22address%22%3A%22swap%20lake%22%2C%0A%09%09%2F%2F%22jsonArray%22%3A%5B%22this%20is%20a%20jsonArray%20value%22%2C%22another%20jsonArray%20value%22%5D%7D%0A%09%09System.out.println(jsonObject)%3B%0A%09%09%0A%09%09%2F%2F%E6%A0%B9%E6%8D%AEkey%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%0A%09%09String%20jsonString%20%3D%20jsonObject.getString(%22name%22)%3B%0A%09%09System.out.println(%22jsonString%3D%3D%3E%22%2BjsonString)%3B%0A%09%7D%0A%7D%0A" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
-
import
net.sf.json.JSONArray;
-
import
net.sf.json.JSONObject;
-
-
public
class
JSONObjectSample{
-
-
-
private
static
JSONObjectcreateJSONObject(){
-
JSONObjectjsonObject=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){
-
JSONObjectjsonObject=JSONObjectSample.createJSONObject();
-
-
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"
,
"swaplake"
);
-
System.out.println("添加属性后的对象==>"
+jsonObject);
-
-
-
JSONArrayjsonArray=new
JSONArray();
-
jsonArray.add(0
,
"thisisajsonArrayvalue"
);
-
jsonArray.add(1
,
"anotherjsonArrayvalue"
);
-
jsonObject.element("jsonArray"
,jsonArray);
-
JSONArrayarray=jsonObject.getJSONArray("jsonArray"
);
-
System.out.println("返回一个JSONArray对象:"
+array);
-
-
-
-
System.out.println(jsonObject);
-
-
-
StringjsonString=jsonObject.getString("name"
);
-
System.out.println("jsonString==>"
+jsonString);
-
}
-
}
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
分享到:
相关推荐
通过深入学习这三种技术,开发者可以更好地理解JSON在Java中的应用,并根据项目需求灵活选择合适的方法来处理JSON数据。这些技能对于任何Java Web开发者来说都是必不可少的。在提供的压缩包文件中,可能包含了示例...
JSON in Java.htm文件可能包含有关这些库的详细教程,包括如何处理数组、嵌套对象、转换复杂类型的示例,以及如何自定义序列化和反序列化过程。而JSON in Java.files可能包含更多的代码示例或相关的辅助资源。 学习...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,但也使用了类似于C家族语言(包括Java)的习惯,这使得它对人类可读且易于编写,同时也易于机器解析和生成。...
下面我们将详细讨论如何在Java中实现这个转换过程。 首先,我们需要引入必要的库。Java标准库并没有内置XML到JSON的转换功能,所以我们通常会借助第三方库,如Jackson或Gson。这里我们以Jackson为例,因为它提供了...
在Java编程中,获取JSON网页数据是常见的任务,特别是在处理Web API或者进行数据抓取时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和高效而广泛被采用。本实例将深入讲解如何使用...
Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject,是因为缺少java-json.jar-附件资源
包含以下java源文件: com.google.gson.DefaultDateTypeAdapter.class com.google.gson.ExclusionStrategy.class com.google.gson.FieldAttributes.class com.google.gson.FieldNamingPolicy.class ...
JSON中的对象和数组可以通过`@JsonProperty`注解和`@JsonArray`、`@JsonObject`等注解进行映射。对于嵌套的对象,可以定义对应的Java类,并在字段上添加注解。 6. **类型转换和自定义序列化/反序列化** Jackson...
首先,`org.json`是由JSON.org提供的一个轻量级的Java API,它主要提供了JSONObject、JSONArray、JSONString、JSONTokener等类,用于解析和生成JSON。例如,你可以使用JSONObject来创建一个JSON对象: ```java ...
在Java编程中,将JSON字符串转换为JavaBean实例是一个常见的任务,特别是在处理Web服务或API交互时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,而JavaBean是Java中的一种对象模型,用于封装...
本文将详细讲解如何使用Java作为后台语言来构建返回JSON数据的接口,以供iOS和Android客户端进行数据交换。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其易于人阅读和编写,同时也易于机器...
2. **JSON解析**:使用JSON库(如`org.json`、Gson或Jackson)将接收到的JSON数据解析为Java对象。 3. **API调用**:理解并正确使用IP Geolocation服务的API接口,包括API URL、请求参数和密钥管理。 4. **错误处理*...
sqoop1 import 时报错Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject。下载后,然后放到sqoop/lib目录即可。
以下是关于如何在Java Web项目中添加JSON支持以及涉及的jar文件的详细说明。 1. **什么是JSON?** JSON是一种基于文本的数据格式,易于人阅读和编写,同时也易于机器解析和生成。它的语法结构与JavaScript对象类似...
`json-lib`是一个流行的JSON库,它可以将Java对象转换为JSON字符串,反之亦然。首先,确保已添加json-lib的依赖,如`json-lib-2.3-jdk15.jar`。然后,可以使用`net.sf.json.JSONObject`或`JSONArray`类来解析和操作...
例如,Python的`json`模块提供了`loads()`方法,Java的`org.json`库有`JSONObject`和`JSONArray`类。 7. 安全注意事项 JSON注入是安全问题之一,开发者应确保接收的JSON数据来源可信,并在必要时进行转义处理,...
JSON(JavaScript Object ...在"Json网络解析例子"的项目中,"MyText"可能是包含示例代码或详细步骤的文本文件,你可以打开这个文件查看具体实现。通过学习这个例子,你应该能够掌握如何在实际项目中处理JSON网络数据。
这里我们将深入探讨如何使用Java发送GET和POST请求,以及处理JSON数据。 首先,让我们关注GET请求。GET请求主要用于从服务器获取资源,其参数通常包含在URL中。在Java中,可以使用`HttpURLConnection`类或者第三方...
本文将详细讲解如何在Android中实现这一功能,包括解析JSON数据和使用这些数据来填充UI。 首先,我们需要在项目的res/raw目录下存放JSON文件。此目录专门用于存储应用程序的原始数据,如音频、视频、文本文件等。...