1つのレコードの取得

1つのレコードをストアから取得するには、KVStore.get()メソッドを使用します。このメソッドは、ValueVersionオブジェクトを返します。ValueVersion.getValue()を使用して、キーに関連付けられているValueオブジェクトを返します。Valueのバイト配列を使用可能な形式にするのは、アプリケーションが行う必要があります。それには通常、Avroバインディングを使用する必要があります。詳細は、「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());