Springブートプロジェクトで標準の@Cacheable Springアノテーションを使用する別のjarライブラリに標準のSpring @Serviceクラスがいくつかあります。依存関係を宣言し、CacheManagerを構成して作品!Grails Cache Pluginを通常のSpring Service Beanで使用する
私はGrails 3.1プロジェクトで同じことをしようとしていますが、運はありません! 私はhttps://github.com/grails-plugins/grails-cacheはその「独自の」@Cacheableアノテーションを使用する必要があることを発見:私はちょうどGrailsの@Cacheableを使用し、それが働いているが、私はシングルを持っているしたいのですが、いくつかのサービスをフォーク回避策として
http://grails-plugins.github.io/grails-cache/3.0.x/api/grails/plugin/cache/Cacheable.html
@ grailsの下で動作するサービスかどうか!
私は何かを誤って設定しましたが、同じように動作しませんが、私は何か分かりません!
私は春だけ&のGrailsプロジェクトの間にこのJARのlibを共有したいと思いますが、私は「独自の」を使用 Grailsのアプリ/サービスディレクトリ&の下でサービスcalssesをフォークしない限り、これまでのところ、私は、キャッシングの仕事をすることはできません@Cacheableアノテーション。 org.springframework.context.annotation.Bean注釈付き /GPsGrails3/grails-app/init/gpsgrails3/Application.groovy :
iは、プラグインを削除し、豆やでキャッシュを設定してみてください
@Primary
@Bean
public ConcurrentMapCacheManager concurrentMapCacheManager() {
return new ConcurrentMapCacheManager();
}
@Bean
public SignatureService signatureService() {
SignatureService _signatureService = new SignatureService();
return _signatureService;
}
私は、Grailsのアプリ/サービスディレクトリの下signatureServiceを置く:/GPsGrails3/grails-app/services/it/finmatica/ifw/impl/SignatureService.groovy
多分私は私の中で豆を設定する必要があります。 /GPsGrails3/grails-app/conf/spring/resources.grああ?
私はプラグインのバージョン4を使用する必要がありますか? "org.grails.plugins:cache:4. +"
Grailsアノテーションを使用すると、Springのランタイムプロキシ生成メカニズムがそれを認識し、キャッシングを行うプロキシを作成するように、バイトコード内にSpringアノテーションを追加するAST変換がトリガーされます。 –
これは 'cache'プラグインのバージョン4で変更されます。これはコンパイル時にすべてのキャッシングを補完し、ランタイムプロキシを必要としません。必要に応じてSpringアノテーションを使用することはできますが、Groovyで書かれたサービスに対しては、それを行うには多くの理由がありません。 –