Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen Sie erweiterte Dokumente
An EnhancedDocument
steht für ein Objekt vom Typ Dokument mit einer komplexen Struktur mit verschachtelten Attributen. An EnhancedDocument
erfordert Attribute der obersten Ebene, die den für den angegebenen Primärschlüsselattributen entsprechen. DocumentTableSchema
Der restliche Inhalt ist willkürlich und kann aus Attributen der obersten Ebene und auch tief verschachtelten Attributen bestehen.
Sie erstellen eine EnhancedDocument
Instanz mithilfe eines Builders, der mehrere Möglichkeiten zum Hinzufügen von Elementen bietet.
Aus einer JSON-Zeichenfolge erstellen
Mit einer JSON-Zeichenfolge können Sie einen Methodenaufruf EnhancedDocument
in einem Schritt erstellen. Das folgende Snippet erstellt EnhancedDocument
aus einer JSON-Zeichenfolge, die von der jsonPerson()
Hilfsmethode zurückgegeben wird. Die jsonPerson()
Methode gibt die JSON-String-Version des zuvor gezeigten Personenobjekts zurück.
EnhancedDocument document = EnhancedDocument.builder() .json( jsonPerson() ) .build());
Aus einzelnen Elementen zusammensetzen
Alternativ können Sie mit den typsicheren Methoden des Builders eine EnhancedDocument
Instanz aus einzelnen Komponenten erstellen.
Im folgenden Beispiel wird ein person
erweitertes Dokument erstellt, das dem erweiterten Dokument ähnelt, das aus der JSON-Zeichenfolge im vorherigen Beispiel erstellt wurde.
/* Define the shape of an address map whose JSON representation looks like the following. Use 'addressMapEnhancedType' in the following EnhancedDocument.builder() to simplify the code. "home": { "zipCode": "00000", "city": "Any Town", "state": "FL", "street": "123 Any Street" }*/ EnhancedType<Map<String, String>> addressMapEnhancedType = EnhancedType.mapOf(EnhancedType.of(String.class), EnhancedType.of(String.class)); // Use the builder's typesafe methods to add elements to the enhanced document. EnhancedDocument personDocument = EnhancedDocument.builder() .putNumber("id", 50) .putString("firstName", "Shirley") .putString("lastName", "Rodriguez") .putNumber("age", 53) .putNull("nullAttribute") .putJson("phoneNumbers", phoneNumbersJSONString()) /* Add the map of addresses whose JSON representation looks like the following. { "home": { "zipCode": "00000", "city": "Any Town", "state": "FL", "street": "123 Any Street" } } */ .putMap("addresses", getAddresses(), EnhancedType.of(String.class), addressMapEnhancedType) .putList("hobbies", List.of("Theater", "Golf"), EnhancedType.of(String.class)) .build();
private static String phoneNumbersJSONString() { return " [" + " {" + " \"type\": \"Home\"," + " \"number\": \"555-0140\"" + " }," + " {" + " \"type\": \"Work\"," + " \"number\": \"555-0155\"" + " }" + " ]"; } private static Map<String, Map<String, String>> getAddresses() { return Map.of( "home", Map.of( "zipCode", "00002", "city", "Any Town", "state", "ME", "street", "123 Any Street")); }