EhCache を使用すると、必要に応じてすべてのキャッシュをプログラムで作成できます (つまり、アプリケーションの起動時など)。少なくとも defaultCache が定義された ehcache.xml が必要ですが、次の 2 つの方法で新しいキャッシュを作成できます。
1 - ehcache.xml で定義された defaultCache に基づく:
CacheManager singletonManager = CacheManager.create();
singletonManager.addCache("testCache");
2 - 必要なカスタム設定に基づいて:
//Create a singleton CacheManager using defaults
CacheManager manager = CacheManager.create();
//Create a Cache specifying its configuration.
Cache testCache = new Cache(
new CacheConfiguration("testCache", maxEntriesLocalHeap)
.memoryStoreEvictionPolicy(MemoryStoreEvictionPolicy.LFU)
.eternal(false)
.timeToLiveSeconds(60)
.timeToIdleSeconds(30)
.diskExpiryThreadIntervalSeconds(0)
.persistence(new PersistenceConfiguration().strategy(Strategy.LOCALTEMPSWAP)));
//Remember to add the cache to the cacheManager: The cache is not usable until it has been added.
manager.addCache(testCache);
詳細: http://ehcache.org/documentation/code-samples#adding-and-removing-caches-programmaticallyおよびhttp://ehcache.org/documentation/code-samples#creating-caches-programmatically。