在Java開發(fā)中,我們常常需要比較兩個(gè)JSON對(duì)象的內(nèi)容是否相同。接下來將會(huì)介紹兩個(gè)比較JSON的方法。
方法1:使用Jackson庫
ObjectMapper mapper = new ObjectMapper();
JsonNode node1 = mapper.readTree(json1);
JsonNode node2 = mapper.readTree(json2);
boolean isEqual = node1.equals(node2);
上面的代碼使用Jackson庫將json1和json2轉(zhuǎn)換為JsonNode對(duì)象后,直接調(diào)用equals()方法比較它們的內(nèi)容是否相同。
方法2:使用JSON比較器
JsonObject json1Obj = new JsonObject(json1);
JsonObject json2Obj = new JsonObject(json2);
JsonElement diff = JsonDiff.asJson(json1Obj, json2Obj);
boolean isEqual = diff.isJsonNull();
上面的代碼使用json-p庫中的JsonDiff類比較兩個(gè)JSON對(duì)象。JsonDiff.asJson()方法用于比較兩個(gè)JsonObject對(duì)象的差異,返回JsonElement類型的對(duì)象,如果是空對(duì)象,則說明兩個(gè)JSON對(duì)象內(nèi)容相同。
上一篇css ul是什么元素
下一篇java 和javaee