1つのレコードの取得
1つのレコードをストアから取得するには、KVStore.get()
メソッドを使用します。このメソッドは、ValueVersion
オブジェクトを返します。ValueVersion.getValue()
を使用して、キーに関連付けられているValue
オブジェクトを返します。Value
のバイト配列を使用可能な形式にするのは、アプリケーションが行う必要があります。それには通常、Avroバインディングを使用する必要があります。
たとえば、「ストアへのレコードの書込み」では、値が単純な文字列の場合にキーと値のペアをストアに格納する簡単な例を示しました。次の簡単な例では、レコードの取得方法を示します。(この例も、値のスキーマ管理にAvroを使用しないので、コードでデータをデシリアライズする方法を示したものではありません。)
package kvstore.basicExample;
...
import oracle.kv.Key;
import oracle.kv.Value;
import oracle.kv.ValueVersion;
import java.util.ArrayList;
...
ArrayList<String> majorComponents = new ArrayList<String>();
ArrayList<String> minorComponents = new ArrayList<String>();
...
// Define the major and minor path components for the key
majorComponents.add("Smith");
majorComponents.add("Bob");
minorComponents.add("phonenumber");
// Create the key
Key myKey = Key.createKey(majorComponents, minorComponents);
// Now retrieve the record. Note that we do not show the creation of
// the kvstore handle here.
ValueVersion vv = kvstore.get(myKey);
Value v = vv.getValue();
String data = new String(v.getValue());