json-lib 中关于null与"null"

本文探讨了将json-lib替换为json-java在处理JSON数据时带来的改进,包括更严格的类型验证、更好的null处理、避免了复杂bean转换错误、移除了fromObject方法并采用了构造方法创建实例。推荐在遇到json-lib的奇怪问题时尝试使用json-java。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总感觉json-lib里面关于null和"null"的处理非常不合理,或者说是bug,去了json-lib的网站,最后一次更新是10年了。。。

发现官方网站第一段就说json-lib是基于json-java的,查了查json-java是一直在更新的,并且已经解决了那些奇怪的bug。

官网:

https://github.com/douglascrockford/JSON-java

http://www.json.org/java/

最新版的maven信息:

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20131018</version>
</dependency>

 

抛弃json-lib换成json-java以后发现好用多了。

使用起来基本没什么差别,目前发现的变化:

1、json-java更加严格的验证了不同的数据类型,比如不能在用getString()取得数值型的值;

2、null的处理也更加符合规范,不会像josn-lib那样经常分不清null和"null",isNull("xxx")方法可以直接判断某一属性是否包含有效值;

3、之前偶尔会有一些复杂的bean通过json-lib转化时会报错,现在不会了;

4、没有了fromObject()方法,全部采用构造方法来创建json实例;

 

如果你在使用json-lib时也碰到了很多奇怪的问题,可以换成json-java试试,应该可以解决。

转载于:https://www.cnblogs.com/baibaluo/p/java.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值