java - Jackson 和 GSON 中 JSON 对象的稳定/术语比较

标签 java json jackson gson

事实证明 jackson does not do stable JSON 对象比较与 this question 相反。所以我想知道 GSON 是否具有 JSON 对象的稳定比较。 (无需重写 equals/实现自己的比较器)

最佳答案

您的要点显示 org.json 代码,而不是 Jackson .

Jackson 为所有 JsonNode 提供了完美的 .equals() 实现。这包括所有“非容器类型”以及“容器类型”:

final JsonNodeFactory factory = JsonNodeFactory.instance;

final JsonNode node1 = factory.objectNode().put("hello", "world");
final JsonNode node2 = factory.objectNode().put("hello", "world");

node1.equals(node2); // true

当然,它确实尊重 JSON 对对象成员的“顺序无关紧要”: { "a": 1, "b": 2 } 等于 { "b": 2, "a": 1 } -- 正如它应该的那样。

<小时/>

这也可能只是我的观点,但实际上,当涉及到 JSON 时,任何东西都比 org.json 更好。

关于java - Jackson 和 GSON 中 JSON 对象的稳定/术语比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23488927/

相关文章:

java - 反序列化为动态 Java 类型

java - Joda Time,同时解析hours和clockhours

java - jain sip 如何在 android 中连接 WiFi

jquery - 在执行绘图数据的 jquery ajax 请求时显示等待图像

java - 单元测试中的 HashSet

c++ - 在glTF文件中跨步的属性?

javascript - 使用 Jackson 在 Javascript 和 Java 之间传输 JSON

spring - 通过 Grail 的 bean DSL 配置 Jackson 的 ObjectMapper

java - 'com.google.api.client.json.jackson2.JacksonFactory' 已弃用。我有哪些选择?

javascript - 您能推荐任何在线 JSON 网格查看器或表格查看器吗?