1

メソッドの 1 つで @Cachable アノテーションを使用したいのですが、結果がメソッド シグネチャの一部ではない Spring Bean の属性に依存するという問題があります。

だから私はこのようなものが欲しい:

@Cachable(value="mycache", key="#id, #myspringbean.referenceId")
MyResult myMethod(int id);

これらは実際には 2 つの問題であると思います。複合キーを使用する方法と、式で別の Spring Bean を使用する方法です。

複合キーの使用方法の問題は、おそらくこの SO の質問のように解決できます:複数のメソッド引数に対する @Cacheable キー

しかし、この式で別のSpring Beanを参照する方法については何も見つかりませんでした. それは可能ですか?

4

2 に答える 2

2

SpELの詳細については、Springのドキュメント(http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/expressions.html)を参照してください。ご覧のとおり、構文を使用してBean参照を使用でき@myBeanます。これを行うには、コンテキストにBeanリゾルバーを含める必要があります。

于 2013-02-01T21:09:26.413 に答える