Grundlegende Verwendung von JSONPath in Java

Habe ich JSON als string und ein JSONPath als string. Ich möchte eine Abfrage des JSON mit der JSON-Pfad, die resultierenden JSON als string.

Entnehme ich, dass Jayway ' s json-Pfad ist das standard. Die online-API, jedoch, hat nicht viel Bezug zu den eigentliche Bibliothek erhalten Sie von Maven. GrepCode version grob passt aber.

Es scheint, wie ich sollte in der Lage sein zu tun:

String originalJson; //these are initialized to actual data
String jsonPath;
String queriedJson = JsonPath.<String>read(originalJson, jsonPath);

Das problem ist, dass read gibt, was es fühlt sich am besten geeignete Basis, was die JSONPath findet tatsächlich (z.B. ein List<Object>, String, double usw.), also mein code löst eine Ausnahme für bestimmte Abfragen. Es scheint ziemlich vernünftig anzunehmen, dass es gäbe einige Möglichkeit zum Abfragen von JSON und erhalten JSON zurück; irgendwelche Vorschläge?

Ich weiß nicht, JSONPath aber ich bezweifle, dass das, was Sie im Zusammenhang mit "online-API" ist die offizielle API von Jayway Bibliothek. Da, das aussieht wie JavaDoc sowieso, warum man nicht einfach die neueste version herunterladen und direkt Lesen Sie die aktuelle JavaDoc?
Ich habe es grob passt das GrepCode version. (Ich habe versucht zu machen es einfach für Menschen, Blick in die API ohne Download die Bibliothek, wo immer Sie sind) Insgesamt ist die Bibliothek hat ziemlich schlechte Dokumentation, aber was ich versuche zu tun, scheint so grundlegend, dass ich würde davon ausgehen, es muss möglich sein.
Aus der aktuellen GrepCode version scheint es, dass die Filter, die angewendet werden, zum Parsen der JSON und zurück was auch immer angemessen ist. Wenn Sie möchten, JSON zurück, vielleicht könnten Sie Ihre eigenen filter(s), irgendwie verwenden Sie das Konfigurations-oder vielleicht einfach das Ergebnis, und konvertieren es zurück zu JSON unter Verwendung der gleichen JsonProvider, dass JSONPath konfiguriert ist, d.h. so etwas wie String json = provider.toJson(jsonPath.read(...))

InformationsquelleAutor akroy | 2014-06-25

Schreibe einen Kommentar