Eclipseを使ってCoherenceの利用してみようと思った。
環境
Eclipse 3.6Coherence 3.5.3
coherenceは解凍してあれば良いです。
設定等は必要ありません。
プロジェクトとソースの作成
まずは、Eclipseでプロジェクトを作成し、プロジェクトにcoherence.jarを参照ライブラリに追加します。プロジェクトを右クリックして[ビルド・パス(B)]-[外部アーカイブの追加(V)]から足します。
プロジェクトに下記のファイルを追加します。
注:javaが分からない方はファイル名とソースをそのまま使用して下さい。
CoherenceRun.java
package com.chirokings.coherence;
import com.tangosol.net.CacheFactory;
import com.tangosol.net.NamedCache;
public class CoherenceRun {
public static void main(String[] args) {
NamedCache cache = CacheFactory.getCache("VirtualCache");
String key = "key";
String value = (String) cache.get(key);
if( value == null ){
System.out.println("メモリにないよ");
value="ストリング";
}else{
System.out.println("メモリにあった。"+value);
}
cache.put(key, value);
value = (String) cache.get(key);
if( value == null ){
System.out.println("メモリにないよ");
}else{
System.out.println("メモリにあった。"+value);
}
}
}
実行構成
CoherenceRun.javaを右クリックし[実行]-[実行の構成]を選択します。【実行構成】ダイアログが表示されますので左側から[Javaアプリケーション]をダブルクリックするとCoherenceRunが追加されます。
[引数]タブで[VM引数]に下記を追加します。
-Xms512M -Xmx512Mなお、実行するPCがDHCPでIPを取得している場合は下記とします。
-Xms512M -Xmx512M -Dtangosol.coherence.localhost=127.0.0.1 -Dtangosol.coherence.ttl=0"
実行
実行は【実行構成】ダイアログでCoherenceRunを選んだ状態で右下の[実行]ボタンを押すだけです。下記のような出力結果になるはずです。(エラー出力除く)
メモリにないよ次に、cache.put(key, value);の次の行でブレークポイントを張ってデバック実行してみます。
メモリにあった。ストリング
【デバッグ構成】ダイアログから実行します。
ブレークポイントで止まったことを確認して、もう一つ実行してみます。
そうすると、1度目と異なる結果になることが分かります。
両方の処理を再開すると最終的にこのような出力になるはずです。
メモリにないよこれは1度目の実行の方でメモリに保存されているためです。
メモリにあった。ストリング
メモリにあった。ストリング
メモリにあった。ストリング
(その状態を保つため、ブレークポイントで終わらせないようにしています)