Maison >Java >javaDidacticiel >Comment pouvons-nous mettre à jour les données JSON existantes en Java à l'aide de l'API javax.json ?
L'interface
JsonBuilderFactory est une usine permettant de créer des instances JsonObjectBuilder , tandis que JsonObjectBuilder est un constructeur permettant de créer des modèles JsonObject à partir de zéro. Cette interface initialise un modèle objet JSON vide et fournit des méthodes pour ajouter des paires nom/valeur au modèle objet et renvoyer l'objet résultat. Nous pouvons utiliser la méthode createObjectBuilder() pour créer une instance JsonObjectBuilder pour construire JsonObject .
JsonObjectBuilder createObjectBuilder()
Dans l'exemple ci-dessous, nous pouvons mettre à jour les données JSON existantes avec les données nouvellement ajoutées.
import java.io.*; import javax.json.*; public class UpdateExistingJsonTest { public static void main(String[] args) throws Exception { String jsonString = "{\"id\":\"115\", \"name\":\"Raja\", \"address\":[{\"area\":\"Madhapur\", \"city\":\"Hyderabad\"}]}"; StringReader reader = new StringReader(jsonString); <strong> </strong>JsonReader jsonReader = Json.createReader(reader); System.out.println("Existing JSON: \n" + jsonString); StringWriter writer = new StringWriter(); JsonWriter jsonWriter = Json.createWriter(writer); JsonObject jsonObject = jsonReader.readObject(); JsonBuilderFactory jsonBuilderFactory = Json.createBuilderFactory(null); JsonObjectBuilder jsonObjectBuilder = jsonBuilderFactory.createObjectBuilder(); for(String key : jsonObject.keySet()) { jsonObjectBuilder.add(key, jsonObject.get(key)); } jsonObjectBuilder.add("Contact Number", "9959984000"); jsonObjectBuilder.add("Country", "India"); jsonObject = jsonObjectBuilder.build(); jsonWriter.writeObject(jsonObject); System.out.println("new JSON: \n" + jsonObject); } }
Existing JSON: {"id":"115", "name":"Raja", "address":[{"area":"Madhapur", "city":"Hyderabad"}]} new JSON: {"id":"115","name":"Raja","address":[{"area":"Madhapur","city":"Hyderabad"}],"Contact Number":"9959984000","Country":"India"}
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!