Search:

Search all manuals
Search this manual
Manual
Couchbaseクライアントライブラリ: Java 1.0
Additional Resources
Community Wiki
Community Forums
Couchbase SDKs
Parent Section
5 保存操作
Chapter Sections
Chapters

5.1. Add 操作

add() メソッドは指定したキーで値をデータベースに追加します。もしキーが既にデータベースに存在した場合失敗します。

API Callclient.add(key, expiry, value)
Asynchronousyes
Description Add a value with the specified key that does not already exist. Will fail if the key/value pair already exist.
ReturnsFuture<Boolean> ( Asynchronous request value, as Boolean )
Arguments 
String key Document ID used to identify the value
int expiry Expiry time for key. Values larger than 30*24*60*60 seconds (30 days) are interpreted as absolute times (from the epoch).
Object value Value to be stored

add() メソッドは指定したキーでデータベースに値を追加します:

client.add("someKey", 0, someObject);

「Set 操作」 とは異なり、指定したキーが既に存在する場合、操作は失敗します(その場合 false を返します)。

次の例で、一つ目の操作はキーがまだ存在しない場合成功しますが、二つ目の操作は始めの操作がキーをセットしているので必ず失敗します:

OperationFuture<Boolean> addOp = client.add("someKey",0,"astring");
System.out.printf("Result was %b",addOp.get());
addOp =  client.add("someKey",0,"anotherstring");
System.out.printf("Result was %b",addOp.get());
API Callclient.add(key, expiry, value, transcoder)
Asynchronousyes
Description Add a value with the specified key that does not already exist. Will fail if the key/value pair already exist.
ReturnsFuture<Boolean> ( Asynchronous request value, as Boolean )
Arguments 
String key Document ID used to identify the value
int expiry Expiry time for key. Values larger than 30*24*60*60 seconds (30 days) are interpreted as absolute times (from the epoch).
Object value Value to be stored
Transcoder<T> transcoder Transcoder class to be used to serialize value

このメソッドは add() と同じですが、オブジェクト値のシリアライズ用のカスタムトランスコーダの利用をサポートしています。トランスコーディングの詳細については、以下を参照してください。「オブジェクトのシリアライズ(トランスコーディング)」