Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Operasi, permintaan, dan tanggapan berubah
Di v2.x SDK for Java, permintaan diteruskan ke operasi klien. Misalnya DynamoDbClient's
PutItemRequest
diteruskan ke DynamoDbClient.putItem
operasi. Operasi ini mengembalikan respons dariLayanan AWS, seperti aPutItemResponse
.
Versi 2.x dari SDK for Java memiliki perubahan berikut dari 1.x.
-
Operasi dengan beberapa halaman respons sekarang memiliki
Paginator
metode untuk iterasi secara otomatis atas semua item dalam respons. -
Anda tidak dapat mengubah permintaan dan tanggapan.
-
Anda harus membuat permintaan dan tanggapan dengan metode pembangun statis alih-alih konstruktor. Misalnya, 1.x
new PutItemRequest().withTableName(...)
sekarangPutItemRequest.builder().tableName(...).build()
. -
Operasi mendukung cara singkat untuk membuat permintaan:
dynamoDbClient.putItem(request -> request.tableName(...))
.
Operasi streaming
Operasi streaming seperti Amazon S3 getObject
dan putObject
metode sekarang mendukung non-blocking I/O. Akibatnya, permintaan dan respons PoJOS tidak lagi mengambil sebagai parameter. InputStream
Sebagai gantinya, untuk permintaan sinkron objek permintaan menerimaRequestBody
, yang merupakan aliran byte. Setara asinkron menerima sebuah. AsyncRequestBody
contoh putObject
operasi Amazon S3 di 1.x
s3client.putObject(BUCKET, KEY, new File(file_path));
contoh putObject
operasi Amazon S3 di 2.x
s3client.putObject(PutObjectRequest.builder() .bucket(BUCKET) .key(KEY) .build(), RequestBody.of(Paths.get("myfile.in")));
Secara paralel, objek respons streaming menerima a ResponseTransformer
untuk klien sinkron dan untuk klien asinkron. AsyncResponseTransformer
contoh getObject
operasi Amazon S3 di 1.x
S3Object o = s3.getObject(bucket, key); S3ObjectInputStream s3is = o.getObjectContent(); FileOutputStream fos = new FileOutputStream(new File(key));
contoh getObject
operasi Amazon S3 di 2.x
s3client.getObject(GetObjectRequest.builder().bucket(bucket).key(key).build(), ResponseTransformer.toFile(Paths.get("key")));
Dalam SDK for Java 2.x, operasi respons streaming memiliki metode untuk memuat AsBytes
respons ke dalam memori dan menyederhanakan konversi tipe dalam memori yang umum.