ehcache とアノテーション駆動型の構成でスプリング メソッド キャッシングを構成しました。
ただし、アプリケーションで使用する構成ファイルから無効にできるようにしたいと思います。
net.sf.ehcache.CacheManager.CacheManager()
私の最初のアイデアは、メソッドのキャッシュが無効になっている場合、引数なしで呼び出すことでした。これは例外をスローします:
java.lang.IllegalArgumentException: loadCaches must not return an empty Collection
at org.springframework.util.Assert.notEmpty(Assert.java:268)
at org.springframework.cache.support.AbstractCacheManager.afterPropertiesSet(AbstractCacheManager.java:49)
私の 2 番目のアイデアはnet.sf.ehcache.CacheManager.CacheManager()
、キャッシュが使用されないように (maxElementsInMemory 0 など)、既定のデータを使用して構成することでした。しかし、キャッシュはまだ使用されていますが、これは私が望んでいるものではありません。
プロパティはありますnet.sf.ehcache.disabled
が、ehcache も使用する休止状態のキャッシュを無効にしたくありません。
Q
スプリング メソッド キャッシュを使用するようにすべてを構成し、外部構成ファイルから無効にするにはどうすればよいですか? メソッド キャッシングを有効/無効にするために、アプリケーション コンテキストもコードも変更したくありません。アプリケーションで使用する構成ファイルのみを変更できます。