10.2. デフォルトキャッシュの使用
10.2.1. キャッシュのデータ追加および削除 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Data Grid は、キャッシュに格納されたデータにアクセスして変更を行うため、提案されている JSR-107 API と似たインターフェースを提供します。
次の手順は、DefaultCacheQuickstart.java ファイルに入力された各行が何を実行するかを定義する例になります。
手順10.2 キャッシュのデータ追加および削除
- エントリーを追加し、key と value を希望のキーと値に置き換えます。
cache.put("key", "value");cache.put("key", "value");Copy to Clipboard Copied! Toggle word wrap Toggle overflow - キャッシュにエントリーが存在することを確認します。
assertEquals(1, cache.size()); assertTrue(cache.containsKey("key"));assertEquals(1, cache.size()); assertTrue(cache.containsKey("key"));Copy to Clipboard Copied! Toggle word wrap Toggle overflow - キャッシュからエントリーを削除します。
Object v = cache.remove("key");Object v = cache.remove("key");Copy to Clipboard Copied! Toggle word wrap Toggle overflow - エントリーがキャッシュに存在しないことを確認します。
assertEquals("value", v); assertTrue(cache.isEmpty());assertEquals("value", v); assertTrue(cache.isEmpty());Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.2. キー値の追加と置換 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Data Grid はスレッドセーフなデータ構造を提供します。
次の手順は、
DefaultCacheQuickstart.java ファイルに入力された各行が何を実行するかを定義する例になります。
手順10.3 キー値の追加と置換
valueをキーの値とするエントリーkeyを追加します。cache.put("key", "value");cache.put("key", "value");Copy to Clipboard Copied! Toggle word wrap Toggle overflow
手順10.4 キー値の置換
- 次のコードは、
keyおよびkey2という名前のキーを検索します。検索した 2 つのキーが見つからなかった場合、JBoss Data Grid は指定のキー名と値を持つ 2 つの新しいキーを作成します。cache.putIfAbsent("key", "newValue"); cache.putIfAbsent("key2", "value2");cache.putIfAbsent("key", "newValue"); cache.putIfAbsent("key2", "value2");Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 以下のコードは、格納されたキーの値が格納したい値と同じであることを確認します。
assertEquals(cache.get("key"), "value"); assertEquals(cache.get("key2"), "value2");assertEquals(cache.get("key"), "value"); assertEquals(cache.get("key2"), "value2");Copy to Clipboard Copied! Toggle word wrap Toggle overflow
関連トピック:
10.2.3. データライフの調整 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、Red Hat JBoss Data Grid のエントリーは期限なし (immortal) ですが、この設定は変更できます。
次の手順は、
DefaultCacheQuickstart.java ファイルに入力された各行が何を実行するかを定義する例になります。
手順10.5 データライフの調整
- キーの
lifespan値を変更します。cache.put("key", "value", 5, TimeUnit.SECONDS);cache.put("key", "value", 5, TimeUnit.SECONDS);Copy to Clipboard Copied! Toggle word wrap Toggle overflow - キャッシュにキーが含まれていることを確認します。
assertTrue(cache.containsKey("key"));assertTrue(cache.containsKey("key"));Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 割り当てられた
lifespan時間が期限切れになると、キーはキャッシュから削除されます。Thread.sleep(10000); assertFalse(cache.containsKey("key"));Thread.sleep(10000); assertFalse(cache.containsKey("key"));Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.4. デフォルトのデータ期限 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、新規に作成されたエントリーにはライフスパンや最大アイドル時間値セットがありません。これらの 2 つの値がない場合、データエントリーは永久に期限切れにならないため、期限なし (immortal) データと呼ばれます。
10.2.5. XML を用いた名前付きキャッシュの登録 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
プログラムを使用せずに、名前付きキャッシュを宣言的に (XML を使用) 設定するには、
infinispan.xml ファイルを設定します。
infinispan.xml ファイルは infinispan-quickstart/embedded-cache/src/main/resources フォルダーの https://github.com/infinispan/infinispan-quickstart にあります。