2016-11-11 48 views
5

メソッドのJavaアノテーションがいくつかありますが、どのように各アノテーションのアスペクトの順序を知ることができますか?そして私はそれらの順序をどのように指定することができます。Javaアノテーションの実行順序

@MyAnnotaion 
@Cacheable 
@HystrixCommand 
public void MYMethod() {} 

CacheableがSpringCacheからのものであり、HystrixCommandは、サードパーティ製のパッケージからである、と彼らは両方のランタイム注釈されている、私はHystrixCommand前に実行するCacheableが必要ですが、@orderでそれらをマークすることはできません。

だから、どのように私はすることができます

1、注釈の実行の順序を学びますか?

2、注文を指定しますか?

私は問題を検索しようとしましたが、重複している場合はお知らせください。

+0

http://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html#aop-ataspectj-advice-orderingこれはアスペクトの順序について話していますが、私は注文を変更することはできません。 – FisherMartyn

答えて

1

you can mark order in enable cachingが、これは広い

@EnableCaching(order=0) 

アプリケーション設定になりますが 複数のアドバイスを特定のジョインポイントで適用されているキャッシュアドバイザの実行の順序を示します。