Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membangun dokumen yang disempurnakan
An EnhancedDocument
merupakan objek tipe dokumen yang memiliki struktur kompleks dengan atribut bersarang. Sebuah EnhancedDocument
membutuhkan atribut tingkat atas yang cocok dengan atribut kunci utama yang ditentukan untuk atribut. DocumentTableSchema
Konten yang tersisa bersifat arbitrer dan dapat terdiri dari atribut tingkat atas dan juga atribut yang sangat bersarang.
Anda membuat EnhancedDocument
instance dengan menggunakan builder yang menyediakan beberapa cara untuk menambahkan elemen.
Membangun dari string JSON
Dengan string JSON, Anda dapat membangun panggilan EnhancedDocument
dalam satu metode. Cuplikan berikut membuat EnhancedDocument
dari string JSON dikembalikan oleh metode helper. jsonPerson()
jsonPerson()
Metode mengembalikan versi string JSON dari objek orang yang ditunjukkan sebelumnya.
EnhancedDocument document = EnhancedDocument.builder() .json( jsonPerson() ) .build());
Membangun dari elemen individu
Atau, Anda dapat membangun sebuah EnhancedDocument
instance dari komponen individual menggunakan metode type-safe dari builder.
Contoh berikut membangun dokumen yang person
disempurnakan mirip dengan dokumen yang disempurnakan yang dibangun dari string JSON pada contoh sebelumnya.
/* 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")); }