3.2.3. プログラムを用いた設定
上記の XML ベース設定の他にも、
Configuration やそのコンポーネントによって公開される簡単なプロパティミュテータを使用してプログラムを用いて Configuration を構築することができます。 構築されると、 Configuration オブジェクトが JBoss Cache のデフォルトとして事前設定され、 そのままクイックスタートとして使用することも可能です。
Configuration config = new Configuration();
config.setTransactionManagerLookupClass(
GenericTransactionManagerLookup.class.getName()
);
config.setIsolationLevel(IsolationLevel.READ_COMMITTED);
config.setCacheMode(CacheMode.LOCAL);
config.setLockAcquisitionTimeout(15000);
CacheFactory factory = new DefaultCacheFactory();
Cache cache = factory.createCache(config);
上記のような比較的簡単な設定でもかなり長いプログラムとなります。 そのため、 XML ベース設定の使用が好まれます。 しかし、 アプリケーションがプログラムを用いた設定を必要とする場合、 プログラムを用いてデフォルトから数ヶ所の変更を行うため
Configuration オブジェクトへアクセスしたりエビクションリージョンを追加するなど、 ほとんどの属性に対して XML ベース設定を使用しない理由はありません。
キャッシュが実行されている場合、
@Dynamic アノテーションが付けられている設定値以外の設定値はプログラムを用いて変更できないことがあります。 動的なプロパティは動的であると 「設定ファイルのクイックリファレンス」 の表に明記されています。 動的でないプロパティを変更しようとすると、 ConfigurationException が発生します。