Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pengaturan konfigurasi opsional untuk D ynamoDBMapper
Saat Anda membuat instans DynamoDBMapper
, instans tersebut memiliki perilaku default tertentu; Anda dapat menimpa pengaturan default ini menggunakan kelas DynamoDBMapperConfig
.
Cuplikan kode berikut akan membuat DynamoDBMapper
dengan pengaturan kustom:
AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().build(); DynamoDBMapperConfig mapperConfig = DynamoDBMapperConfig.builder() .withSaveBehavior(DynamoDBMapperConfig.SaveBehavior.CLOBBER) .withConsistentReads(DynamoDBMapperConfig.ConsistentReads.CONSISTENT) .withTableNameOverride(null) .withPaginationLoadingStrategy(DynamoDBMapperConfig.PaginationLoadingStrategy.EAGER_LOADING) .build(); DynamoDBMapper mapper = new DynamoDBMapper(client, mapperConfig);
Untuk informasi selengkapnya, lihat D ynamoDBMapper Config di Referensi.AWS SDK for Java API
Anda dapat menggunakan argumen berikut untuk instans DynamoDBMapperConfig
:
-
Nilai enumerasi
DynamoDBMapperConfig.ConsistentReads
:-
EVENTUAL
—instans pemeta menggunakan permintaan bacaan akhir konsisten. -
CONSISTENT
—instans pemeta menggunakan permintaan bacaan sangat konsisten. Anda dapat menggunakan pengaturan opsional ini dengan operasiload
,query
, atauscan
. Bacaan sangat konsisten memiliki implikasi terhadap performa dan penagihan; lihat halaman detail produkDynamoDB untuk informasi selengkapnya.
Jika Anda tidak menentukan pengaturan konsistensi baca untuk instans pemeta Anda, pengaturan defaultnya adalah
EVENTUAL
.catatan
Nilai ini diterapkan dalam
query
,querypage
,load
, danbatch load
operasi DynamoDBMapper. -
-
Nilai enumerasi
DynamoDBMapperConfig.PaginationLoadingStrategy
—Mengontrol cara instans pemeta memproses daftar data yang diberi nomor halaman, seperti hasil dariquery
atauscan
:-
LAZY_LOADING
—instans pemeta memuat data jika memungkinkan, dan menyimpan semua hasil yang dimuat dalam memori. -
EAGER_LOADING
—instans pemeta memuat data segera setelah daftar diinisialisasi. -
ITERATION_ONLY
—Anda hanya dapat menggunakan Iterator untuk membaca dari daftar. Selama iterasi, daftar akan menghapus semua hasil lama sebelum memuat halaman berikutnya, sehingga daftar akan menyimpan maksimal satu halaman dari hasil yang dimuat dalam memori. Hal ini juga berarti bahwa daftar hanya dapat diiterasi satu kali. Strategi ini direkomendasikan saat menangani item besar, guna mengurangi overhead memori.
Jika Anda tidak menentukan strategi pemuatan pemberian nomor halaman untuk instans pemeta Anda, pengaturan defaultnya adalah
LAZY_LOADING
. -
-
Nilai enumerasi
DynamoDBMapperConfig.SaveBehavior
- Menentukan cara instans pemeta akan menangani atribut selama operasi simpan:-
UPDATE
—selama operasi simpan, semua atribut model diperbarui, dan atribut yang tidak dibuat modelnya tidak terpengaruh. Jenis angka primitif (byte, int, long) diatur ke 0. Jenis objek diatur ke null. -
CLOBBER
—menghapus dan mengganti semua atribut, termasuk yang tidak dibuat modelnya, selama operasi simpan. Hal ini dilakukan dengan menghapus item lalu membuatnya kembali. Batasan bidang dengan versi juga diabaikan.
Jika Anda tidak menentukan perilaku simpan untuk instans pemeta, pengaturan defaultnya adalah
UPDATE
.catatan
D operasi ynamoDBMapper transaksional tidak mendukung
DynamoDBMapperConfig.SaveBehavior
enumerasi. -
-
Objek
DynamoDBMapperConfig.TableNameOverride
—Menginstruksikan instans pemeta untuk mengabaikan nama tabel yang ditentukan oleh anotasiDynamoDBTable
kelas, dan menggunakan nama tabel lain yang Anda berikan. Ini berguna saat mempartisi data Anda menjadi beberapa tabel saat runtime.
Anda dapat mengganti objek konfigurasi default untuk DynamoDBMapper
per operasi, jika diperlukan.