Heim > Java > javaLernprogramm > Wie vergleiche ich JSON-Objekte ohne Berücksichtigung der untergeordneten Reihenfolge in Java?

Wie vergleiche ich JSON-Objekte ohne Berücksichtigung der untergeordneten Reihenfolge in Java?

Patricia Arquette
Freigeben: 2024-11-08 09:40:02
Original
876 Leute haben es durchsucht

How to Compare JSON Objects without Regarding Child Order in Java?

Vergleichen von JSON-Objekten in Java ohne Berücksichtigung der untergeordneten Reihenfolge

Beim Unit-Testen von JSON-Antworten von Webdiensten werden Bibliotheken analysiert, die JSON-Objekte vergleichen Die Missachtung der Kinderordnung kann von unschätzbarem Wert sein.

Lösung: Skyscreamer's JSONAssert

Die JSONAssert-Bibliothek von Skyscreamer bietet eine Lösung. Sein „nicht strikter“ Modus ermöglicht:

  • Objekterweiterbarkeit: Erwarteter Wert {id:1} entspricht {id:1,moredata:'x'}.
  • Loose Array-Reihenfolge : ['dog','cat'] entspricht ['cat','dog'].

Im strikten Modus funktioniert JSONAssert Ähnlich wie die Testklasse von json-lib.

Beispielverwendung

<code class="java">@Test
public void testGetFriends() {
    JSONObject data = getRESTData("/friends/367.json");
    String expected = "{friends:[{id:123,name:\"Corby Page\"}"
        + ",{id:456,name:\"Solomon Duskis\"}]}";
    JSONAssert.assertEquals(expected, data, false); // "false" for non-strict mode
}</code>
Nach dem Login kopieren

Zusätzliche Funktionen

  • Fehler löschen Meldungen beim Vergleich großer JSON-Objekte
  • Bietet sowohl nicht-strikten als auch strikten Vergleich Modi

Das obige ist der detaillierte Inhalt vonWie vergleiche ich JSON-Objekte ohne Berücksichtigung der untergeordneten Reihenfolge in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage