`

net.sf.json.JSONObject 和org.json.JSONObject 的差别

    博客分类:
  • JSON
阅读更多

一、创建json对象

String str = "{\"code\":\"0000\", \"msg\":{\"availableBalance\":31503079.02}}

org.json.JSONObject:

JSONObject json = new JSONObject(str);

net.sf.json.JSONObject:

JSONObject json = JSONObject.fromObject(str);  net.sf.json.jsonobject 没有 new JSONObject(String)的构造方法

二、解析json

第一种直接用json对象.getXXX();方法获取

net.sf.json.JSONObject: 没有严格要求获取字段的类型跟getXXX()的类型一样

org.json.JSONObject:获取的字段类型必须跟getXXX()的类型一样

e.g.

JSONObject msgObj = json.getJSONObject("msg");

String availableBalance = msgObj.getString("availableBalance");

如果在org.json.JSONObject 就会报错,可以msgObj.getDouble("availableBalance");也不会丢精度;而net.sf.json.JSONObject正确,但是精度会丢失,如果String str = "{\"code\":\"0000\", \"msg\":{\"availableBalance\":\"31503079.02\"}}";

就不会丢失精度。

二json对象直接转变实体对象

public class BalanceDto {
private String availableBalance;

//setter  and getter省略
}
org.json.JSONObject:

待定

net.sf.json.JSONObject:

String msg = json.getString("msg");
BalanceDto  alanceDto = (BalanceDto) JSONObject.toBean(msg,BalanceDto().class());

三、从json中获取数组长度

JSONArray subArray = json.getJSONArray("msg");

net.sf.json.JSONObject:

int leng = subArray.size();

 org.json.JSONObject:

int leng = subArray.length();

分享到:
评论

相关推荐

    net.sf.json.JSONObject依赖jar

    net.sf.json.JSONObject是开源项目Apache Jakarta的一个子项目,提供了一个Java对象到JSON和JSON到Java对象的映射库。这个库允许开发者通过简单的API来操作JSON,从而实现数据的序列化和反序列化。 标题中的...

    net.sf.json.JsonObject需要的jar包

    根据标题和描述,这个压缩包文件可能包含了运行和使用`net.sf.json.JSONObject`所需的依赖。通常,这些jar包可能包括json-lib的主库和其他可能的依赖,比如`net.sf.ezmorph.jar`(因为json-lib在处理某些转换时会...

    net.sf.json.JSONObject相关jar包.zip

    标题 "net.sf.json.JSONObject相关jar包.zip" 指的是一个包含了与net.sf.json.JSONObject类库相关的Java档案(JAR)文件的压缩包。这个类库是开源项目JSON.org的一部分,用于在Java应用程序中处理JSON(JavaScript ...

    com.alibaba.fastjson.JSON , net.sf.json.JSONObject

    在Java开发中,处理JSON数据时通常会用到一些库,如`com.alibaba.fastjson.JSON` 和 `net.sf.json.JSONObject`。这两个库分别是阿里巴巴的Fastjson和Eclipse的Json-lib。 首先,我们来详细了解一下`...

    net.sf.json.JSONObject Jar包下载

    "net.sf.json.JSONObject"是开源项目json-lib中的一个核心类,它提供了用于处理JSON对象的功能。这个Jar包是为Java开发者提供的一种便捷的方式来在Java对象与JSON数据之间进行转换。 JSONObject是net.sf.json库中的...

    net.sf.json.JSONObject 依赖的包

    `net.sf.json.JSONObject` 是一个广泛使用的开源JSON库,它为Java开发者提供了处理JSON对象的能力。这个库在很多项目中被用作与JSON数据交互的工具,尤其在那些不使用现代Java版本(如Java 8及以上)或者不依赖更...

    net.sf.json.JSONObject实现Object对象与Json字符串的互转

    总的来说,`net.sf.json.JSONObject`是Java开发中处理JSON数据的一个工具,它提供了一种方便的方式来转换Java对象和JSON字符串,使得数据交换变得更加简单。通过理解和熟练使用`JSONObject`,开发者可以更好地应对...

    net.sf.json.JSONObject依赖库.zip

    在Java开发中,`net.sf.json.JSONObject`是一个广泛使用的JSON处理库,特别是在Maven仓库中无法直接找到的情况下,开发者可能需要手动引入这个依赖库。`net.sf.json`库提供了对JSON(JavaScript Object Notation)...

    net.sf.json.JSONObject需要的jar包

    net.sf.json.JSONObject所需要的jar包 commons-beanutils-1.9.3.jar commons-collections-3.2.2 commons-lang-2.6 commons-logging-1.2 ezmorph-1.0.6 json-lib-2.4-jdk15

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

    在Java开发中,数据交换和存储常常涉及到JSON...以上就是使用`net.sf.json.JSONObject`进行JSON操作的基本步骤和进阶技巧。在实际开发中,你可能还需要结合其他工具,如Gson或Jackson,根据项目需求选择合适的JSON库。

    net.sf.json.JSONObject需要引用几个JAR包

    在Java开发中,`net.sf.json.JSONObject` 是一个常用的JSON对象模型类库,它属于`json-lib`项目的一部分。这个类库允许开发者在Java中处理JSON数据,进行序列化和反序列化操作。然而,为了能够正确使用`JSONObject`...

    net.sf.json.JSONObject对象使用指南

    在Java开发领域,多种库支持JSON的解析和生成,其中`net.sf.json.JSONObject`是较为常用的一种实现。 #### JSON概述 JSON是一种基于文本的数据交换格式,主要包括两种结构:一种是“名称/值”对的集合,另一种是值...

    net.sf.json.JSONObject需要用到的6个jar包

    java开发中需要jsonObject,jsonArray需要用到6个jar包,net.sf.json.JSONObject commons-beanutils-1.7.0.jar commons-collections-3.1.jar commons-lang-2.5.jar commons-logging.jar ezmorph-1.0.3.jar json-lib-...

    net.sf.json.JSONObject所需的jar包

    此外,`net.sf.json.JSONObject`还提供了丰富的API,如获取、设置值,以及操作嵌套的JSON对象和数组等。例如,可以使用`getString()`, `getInt()`, `put()`等方法与JSON对象进行交互: ```java String name = ...

    解决net.sf.json.JSONObject

    `net.sf.json.JSONObject`是Java中一个常用的JSON处理库,主要由开源组织json-lib提供。在处理JSON数据时,我们经常遇到与`net.sf.json.JSONObject`相关的各种问题,包括序列化、反序列化、解析JSON字符串以及操作...

    JSON net.sf.json jar包

    例如,你可以使用`JSONArray`、`JSONObject`等类进行JSON的创建、解析和操作。 总的来说,`net.sf.json`库是Java开发中处理JSON数据的一个强大工具,能够帮助开发者轻松地进行JSON数据的序列化和反序列化,提高了...

    JSON(net.sf.json.JSONArray)需要的jar包

    `net.sf.json.JSONArray`是开源项目Apache licensed Json-lib的一部分,它提供了对JSON数组的操作支持,如创建、读取、修改和遍历数组。 描述中提到了"JSONObject等",这暗示除了`JSONArray`之外,可能还需要`...

    JSONObject(net.sf.json)jar包和依赖包

    通过JSONObject json = JSONObject.fromObject(student);将构造好的Student对象转换为JSON对象,Student如上文所述。 进入此方法后会继续调用fromObject(Object, JsonConfig)的重载方法,在此重载方法中会通过...

    net.sf.json需要的jar

    标题中的"net.sf.json需要的jar"指的是在Java开发中使用net.sf.json库时所需的依赖JAR文件。net.sf.json是开源项目,它提供了一系列的API来处理JSON(JavaScript Object Notation)数据格式,便于Java应用程序与JSON...

Global site tag (gtag.js) - Google Analytics