Heim > Artikel > Web-Frontend > Was ist JsonObject?
JSONObject ist eine Datenstruktur, die als Datenstruktur im JSON-Format verstanden werden kann, also als „Schlüssel-Wert“-Struktur. Ihr Format ist „{“key1“:value1,“key2“. value2.... }"; Um Elemente zu JSONObject hinzuzufügen, können Sie die Methoden put und get verwenden.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, Java 8-Version, DELL G3-Computer.
JSONObject ist eine Datenstruktur, die als Datenstruktur im JSON-Format (Schlüssel-Wert-Struktur) verstanden werden kann. Mit der Put-Methode können Sie Elemente zum JSON-Objekt hinzufügen. JSONObject kann problemlos in eine Zeichenfolge konvertiert werden, und andere Objekte können ebenfalls problemlos in JSONObject-Objekte konvertiert werden.
JsonObject-Format:
{"key1":value1,"key2",value2....}
key
muss eine Zeichenfolge sein.
Welche Rolle spielt JsonObject?
JsonObject wird oft als JSON bezeichnet. Es ist ein wichtiges Datenübertragungsobjekt.
Da Ajax-Anforderungen die Seite nicht aktualisieren, aber mit js eine teilweise Aktualisierung erreichen können, wird JSON häufig als Rückgabeobjekt asynchroner Anforderungen verwendet.
Rufen Sie das PrintWriter-PW über Response.getWriter() und dann über pw.print(json) ab. Wenn Response.setContentType("application/json; charset=utf-8"); nicht festgelegt ist, müssen Sie es selbst in js analysieren.
Um Elemente zu JSONObject hinzuzufügen, können Sie die Methode put(key,value) verwenden und die Elementmethode get(key) aufrufen. Darüber hinaus ist JsonObject ein wichtiger Datentyp Übertragungsobjekt. Es ist für die praktische Arbeit unerlässlich.
1. Instanziieren Sie ein JSONObject-Objekt und schreiben Sie die Daten mit der put()-Methode.
JSONObject obj = new JSONObject(); obj.put(key, value);
2. Verwenden Sie HashMap zum Erstellen von
Tatsächlich erstellen Sie zuerst ein HashMap-Objekt, verpacken die Daten darin und verwenden es dann als JSONObject beim Erstellen Ein Parameter wird übergeben.
Map<String, Object> data = new HashMap<String, Object>(); data.put("name", "John"); data.put("sex", "male"); data.put("age", 22); data.put("is_student", true); data.put("hobbies", new String[] {"hiking", "swimming"}); JSONObject obj = new JSONObject(data); // 或是下面这种写法,将 java 对象转换为 json 对象 JSONObject obj = JSONObject.fromObject(data);
3. Verwenden Sie JavaBean zum Erstellen
Diese Methode wird in der Praxis häufiger verwendet.
JavaBean erstellen:
public class PersonInfo { private String name; private String sex; private int age; private boolean isStudent; private String[] hobbies;
JSON erstellen:
PersonInfo info = new PersonInfo(); info.setName("John"); info.setSex("male"); info.setAge(22); info.setStudent(true); info.setHobbies(new String[] {"hiking", "swimming"}); JSONObject obj = new JSONObject(info); // 或是下面这种写法,将 java 对象转换为 json 对象 JSONObject obj = JSONObject.fromObject(data);
Hinweis: JavaBean muss eine Getter-Methode haben, sonst sind die gespeicherten Daten nicht zugänglich.
Das Parsen von JSON umfasst hauptsächlich Basistypen wie Number, Boolean usw. und Array Array.
Beim Parsen von Basistypen wird direkt die Methode getXxx(key) des JSONObject-Objekts aufgerufen. Wenn eine Zeichenfolge abgerufen wird, wird getString(key) verwendet, und für einen booleschen Wert wird getBoolean(key) verwendet.
Um ein Array zu analysieren, müssen Sie ein JSONArray-Objekt über die Methode getJSONArray(key) des JSONObject-Objekts abrufen und dann die Methode get(i) des JSONArray-Objekts aufrufen, um die Array-Elemente abzurufen, wobei i das ist Indexwert.
1. JSON-String-Analyse, die nur ein Objekt enthält
//将得到json数据转换为一个json对象 JSONObject jsonObject = new JSONObject(data); //获取"persons"的json对象 jsonObject = jsonObject.getJSONObject("persons"); //通过相应的get方法,获取相应的属性 int id = jsonObject.getInt("id"); String name = jsonObject.getString("name"); int age = jsonObject.getInt("age"); //将获取到的数据放到一个Person对象中 Person person = new Person(id, name, age);
2. JSON-String, der mehrere Objekte enthält
List<Person> list = new ArrayList<>(); //将得到json数据转换为一个json对象 JSONObject jsonObject = new JSONObject(data); //获取"persons"的json对象,并将其转换为一个json数组 JSONArray array = jsonObject.getJSONArray("persons"); //通过循环获取数据,并放入list集合中 for (int i = 0;i<array.length();i++){ int id = array.getJSONObject(i).getInt("id"); String name = array.getJSONObject(i).getString("name"); int age = array.getJSONObject(i).getInt("age"); Person person = new Person(id, name, age); list.add(person); } return list;
Das obige ist der detaillierte Inhalt vonWas ist JsonObject?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!