2017-10-31 13 views
0

私はEhcache 3.4を使用していますが、そのキーに基づいてキャッシュからエントリを消去する必要がある状況があります。私は事前に鍵を知らず、キャッシュからそれらをリストするためのきれいな方法を見つけられませんでした。私はキャッシュのキーをリストすることが反パターンであり、それに同意していることをどこかで読んでいますが、今ではこれから良い方法を見ることができません。私が試したか、と考えました
もの:ehcacheエントリを選択的に消去する

  • 反復キャッシュオブジェクトの上に(ちょっと動作しますが、ひどいコードで結果)
  • は、ベストプラクティスのためのSO質問にキャッシュされたキー
  • の二次リストをキープこの場合

私はキャッシュ全体をクリアすることができますが、パフォーマンス上のヒットは避けたいと思います。私の選択肢は何ですか?

+0

は、要素のキーまたは他の属性に基づく削除条件ですか? – diginoise

+0

鍵に基づいています。 – Sam

+0

キーは、オブジェクトが存在する階層内の場所を示し、ツリーの一部のみを殺すことを目的としています。 – Sam

答えて

1

エントリの反復処理とは別に何ができるか分かりません。

キャッシュではなく、マップと言うと、あなたは何をしますか?

+0

その主な理由は、キーが公開されず、リフレクションを使用して取得する必要があったことです。それは動作しますが、良い解決策ではありません。 – Sam

+0

もう一度あなたができることは何もありません。キーを公開するようにデザインを変更することはできませんか? – Henri

+0

どちらもできません。ehcacheの実装を変更することで問題は解決しますが、それは過度のものになると思います。 – Sam

関連する問題