1. Was ist JSON
JSON ist ein leichtes Datenaustauschformat, das ein von Programmiersprachen völlig unabhängiges Textformat zum Speichern und Darstellen von Daten verwendet. Einfachheit und klare hierarchische Struktur machen JSON zu einer idealen Datenaustauschsprache. Es ist leicht zu lesen und zu schreiben sowie einfach zu analysieren und zu generieren und verbessert effektiv die Effizienz der Netzwerkübertragung.
2. JSON-Syntax
(1) Daten liegen in Name/Wert-Paaren vor
(2) Daten werden durch Kommas getrennt
(3) Klammern speichern das Objekt
(4) Eckige Klammern speichern das Array
3. Vier Möglichkeiten, JSON in Java zu generieren und zu analysieren (einfache Demo):
Eine Entitätsklasse: Wird zum Konvertieren von JSON-Daten in und von
public class Person { private String name; private String sex; private int age; public Person(String name, String sex, int age) { this.name = name; this.sex = sex; this.age = age; } public String getName() { return name; } public String getSex() { return sex; } public int getAge() { return age; } @Override public String toString() { return "Person{name='" + name + '\'' + ", sex='" + sex + '\'' + ", age=" + age + '}'; } }
(1) Verwenden Sie traditionelle Methoden:
Generieren Sie eine JSON-Zeichenfolge aus der Entitätsklasse:
public Person getPerson(){ return new Person("张三", "男", 25); } @Test public void EntityToJson(){ JSONObject jsonObject = new JSONObject(); jsonObject.put("name", getPerson().getName()); jsonObject.put("sex", getPerson().getSex()); jsonObject.put("age", getPerson().getAge()); System.out.println(jsonObject.toString()); }
Entitätsklasse aus Json-Zeichenfolge generieren:
@Test public void JsonToEntity(){ String jsonString = "{\"sex\":\"男\",\"name\":\"张三\",\"age\":25}"; JSONObject jsonObject = new JSONObject(jsonString); Person person = new Person(jsonObject.get("name").toString(), jsonObject.get("sex").toString(), Integer.valueOf(jsonObject.get("age").toString())); System.out.println(person.toString()); }
(2) Jackson-Methode verwenden:
Json-Zeichenfolge aus Entitätsklasse generieren:
@Test public void EntityToJson() throws IOException { Person person = new Person("张三", "男", 25); ObjectMapper objectMapper = new ObjectMapper(); String jsonString = objectMapper.writeValueAsString(person); System.out.println(jsonString); }
Entitätsklasse aus Json-Zeichenfolge generieren:
@Test public void JsonToEntity() throws IOException { ObjectMapper objectMapper = new ObjectMapper(); String jsonString = "{\"name\":\"张三\",\"sex\":\"男\",\"age\":25}"; Person person = objectMapper.readValue(jsonString, Person.class); System.out.println(person); }
(3) GSON-Methode verwenden:
Json-Zeichenfolge aus Entitätsklasse generieren:
@Test public void EntityToJson(){ Person person = new Person("张三", "男", 25); Gson gson = new Gson(); String jsonString = gson.toJson(person); System.out.println(jsonString); }
Entitätsklasse aus Json-String generieren:
@Test public void JsonToEntity(){ String jsonString = "{\"name\":\"张三\",\"sex\":\"男\",\"age\":25}"; Gson gson = new Gson(); Person person = gson.fromJson(jsonString, Person.class); System.out.println(person.toString()); }
(4) Verwenden Sie die FastJSON-Methode
, um Json-String aus Entitätsklasse zu generieren:
@Test public void EntityToJson(){ Person person = new Person("张三", "男", 25); Object jsonString = JSON.toJSON(person); System.out.println(jsonString.toString()); }
Entitätsklasse generieren aus der Json-Zeichenfolge:
@Test public void JsonToEntity(){ String jsonString = "{\"name\":\"张三\",\"sex\":\"男\",\"age\":25}"; Person person = JSON.parseObject(jsonString, Person.class); System.out.println(person.toString()); }
Das obige ist der detaillierte Inhalt vonSo analysieren Sie den JSON von JAVA. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!