問題タブ [spring-cache]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - Redis を使用した Spring キャッシュ: NullPointerException
サービス メソッドに注釈を追加@Cacheable
して実行すると、次のエラーが発生しました。
私の構成Bean:
キャッシュが必要なメソッド:
すべてが正常に見えます。ここで何が悪いのかわかりません..
spring - SpEL で基本クラス メソッドにアクセスする
私のクラス構造は次のとおりです。
SpEL を使用して Cacheable の状態で基本クラス関数を呼び出そうとしています。ただし、これは次のエラーをスローします。
このコンテキストからスーパー メソッドを呼び出すにはどうすればよいですか?
spring - Spring application-context.xml でプロバイダとして Ecache を使用して Jcache を設定するにはどうすればよいですか?
Spring のドキュメントでは、以下の情報が提供されています。
春のアプリケーション コンテキスト xml でこの jcacheManager Bean (EhCache をプロバイダーとして) を構成する方法を正確に知りたいです。
以下のように、 pom.xml で依存関係を既に構成していますが、これは問題ありません。
spring - @Async および @Cacheable キャッシングの非 Null 応答
@Async
と同様にマークされたメソッドがある@Cacheable
場合、null の場合に結果をキャッシュしないという条件は機能しますか (それが を返していると見なされますFuture
) ?
spring-cache - Jackson シリアライザーを使用した Redis での Spring キャッシュ: 複数のタイプのドメイン オブジェクトを処理する方法
Web アプリケーションには、 、などMemberModel
、さまざまな種類のドメイン オブジェクトがあります。を構成するときにオブジェクトのタイプが必要であることがわかったので、 を指定しました。しかし、オブジェクトを逆シリアル化するときにエラーが発生しました。PostModel
CreditsModel
JacksonJsonRedisSerializer
Object.class
これを回避するには、2 つのオプションがあります。
JdkSerializationRedisSerializer
代わりに使用してください。ただし、シリアル化の結果が長すぎるため、Redis で多くのメモリを消費します。- ドミアン オブジェクトごとにシリアライザーを構成します。つまり、50 個のドメイン オブジェクトがある場合、50 個のシリアライザーを構成する必要があります。しかし、これは明らかにかなり面倒です。
この問題を解決する優雅な方法はありますか? ありがとう!
java - カスタムリフレッシュとエビクションJavaを使用したDAOでのキャッシュ実装
私のアプリケーションでは、24 時間ごとにキャッシュを更新する必要があるシナリオがあります。データベースのダウンタイムが予想されるため、データベースが稼働している場合にのみ、24 時間後にキャッシュを更新するユース ケースを実装する必要があります。
私はspring-ehacheを使用しており、24時間ごとに更新する単純なキャッシュを実装しましたが、データベースのダウンタイムで保持を可能にするために頭を悩ませることができません。
java - 共有キャッシュの @Cacheable キー?
永続化のために MyBatis を使用している Spring アプリケーションがあります。このアプリケーションでは速度が重要であるため、ehcache を使用しています。MyBatis と Ehcache をセットアップして構成しました。「mybatis」と呼ばれる単一のキャッシュを使用しています。そうしないと、エンティティごとに個別のキャッシュを作成するのがばかげているからです。
これが私のehcache.xmlです。
mybatis マッパー インターフェイスのサンプルを次に示します。
共有キャッシュを使用しているため、キーをドメイン オブジェクトに対して一意にする方法が必要です。保存または削除の例として、新しい値が UI に表示されるようにキャッシュをクリアする必要があります。ただし、キャッシュ全体をクリアしたくありません。delete が呼び出されてキャッシュが削除されたときに、その ID を持つ機関の mybatis キャッシュ内のエントリのみがクリアされるように、これにアプローチする方法がわかりません。
キーは、ドメイン名 + パラメータのようなものである必要があります。機関+ IDの例として。うまくいけば、それは理にかなっています。
この投稿を見ましたが、クラス名+メソッド+パラメータで行っているようです。