Die erste Methode ist die Verwendung von JSON-lib.
Zweite Methode: Verwenden Sie JACKSON.
Die ersten beiden Methoden sind für relativ einfache Pojo-Objekte relativ einfach. Aber im Vergleich zur Verschachtelung mehrerer Datenebenen steigt die Komplexität direkt an.
Die dritte Methode besteht darin, GSON von GOOGLE zu verwenden, um das Problem zu lösen. Jeder, der über Android geschrieben hat, weiß, dass dieses Ding von Google hergestellt wird. Der größte Vorteil besteht darin, dass es grundsätzlich nicht auf andere Pakete angewiesen ist. Die Verwendung macht natürlich Spaß und die Methode zur Werteinstellung ist sehr flexibel. Für komplexe JSON-Werte ist im Grunde alles erledigt.
Es gibt zwei Konzepte in Gson. Eine davon ist JsonObject und JsonArray. Weitere Informationen finden Sie im Code
package com.mycompany.gsondata; import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.google.gson.JsonParser; /** * Hello world! * */ public class App { public static void main(String[] args) { String jsonData = "{\"questionnaireID\": \"QNTest\",\"answerResults\":[{\"questionID\":\"QSTest01\",\"anserContent\":\"cfb7f441-9086-11e3-8cf8-000c2945c442\"},{\"questionID\":\"QSTest01\",\"anserContent\":\"cfb7f441-9086-11e3-8cf8-000c2945c442\"},{\"questionID\":\"QSTest03\",\"anserContent\":\"6b3a9cce-9087-11e3-8cf8-000c2945c442,a086331d-9087-11e3-8cf8-000c2945c442\"},{\"questionID\":\"QSTest01\",\"anserContent\":\"cfb7f441-9086-11e3-8cf8-000c2945c442\"},{\"questionID\":\"QSTest05\",\"anserContent\":\"test测试文字填空\"},{\"questionID\":\"QSTest06\",\"anserContent\":\"3\"},{\"questionID\":\"QSTest07\",\"anserContent\":\"2.2\"}]}"; JsonObject root = new JsonParser().parse(jsonData).getAsJsonObject(); System.out.println(root.get("questionnaireID").toString());//直接取的根节点值 JsonArray AnswerList = root.getAsJsonArray("answerResults");//取数组 for (int i = 0; i < AnswerList.size(); i++) { System.out.println(AnswerList.get(i).getAsJsonObject().get("questionID").toString()); System.out.println(AnswerList.get(i).getAsJsonObject().get("anserContent").toString()); } } }
Weitere verwandte Artikel zu Methoden zum Konvertieren von JSON-Daten in Java-Objekte finden Sie auf der chinesischen PHP-Website!