クラス AspectJAwareAdvisorAutoProxyCreator
java.lang.ObjectSE
org.springframework.aop.framework.ProxyConfig
org.springframework.aop.framework.ProxyProcessorSupport
org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator
org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator
org.springframework.aop.aspectj.autoproxy.AspectJAwareAdvisorAutoProxyCreator
- 実装されたすべてのインターフェース:
SerializableSE
、AopInfrastructureBean
、Aware
、BeanClassLoaderAware
、BeanFactoryAware
、BeanPostProcessor
、InstantiationAwareBeanPostProcessor
、SmartInstantiationAwareBeanPostProcessor
、Ordered
- 既知の直属サブクラス
AnnotationAwareAspectJAutoProxyCreator
AspectJ の呼び出しコンテキストを公開し、複数のアドバイスが同じアスペクトから来る場合のアドバイスの優先順位に関する AspectJ のルールを理解する
AbstractAdvisorAutoProxyCreator
サブクラス。- 導入:
- 2.0
- 作成者:
- Adrian Colyer, Juergen Hoeller, Ramnivas Laddad
- 関連事項:
フィールドサマリー
クラス org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator から継承されたフィールド
DO_NOT_PROXY, logger, PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS
インターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明protected void
extendAdvisors
(ListSE<Advisor> candidateAdvisors) アドバイスチェーンの先頭にExposeInvocationInterceptor
を追加します。protected boolean
shouldSkip
(ClassSE<?> beanClass, StringSE beanName) 指定された Bean がこのポストプロセッサーによる自動プロキシと見なされない場合、サブクラスはこのメソッドをオーバーライドしてtrue
を返す必要があります。sortAdvisors
(ListSE<Advisor> advisors) 提供されたAdvisor
インスタンスを AspectJ の優先順位に従って並べ替えます。クラス org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator から継承されたメソッド
advisorsPreFiltered, findAdvisorsThatCanApply, findCandidateAdvisors, findEligibleAdvisors, getAdvicesAndAdvisorsForBean, initBeanFactory, isEligibleAdvisorBean, setBeanFactory
クラス org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator から継承されたメソッド
buildAdvisors, createProxy, customizeProxyFactory, determineBeanType, determineCandidateConstructors, getBeanFactory, getCacheKey, getCustomTargetSource, getEarlyBeanReference, isFrozen, isInfrastructureClass, postProcessAfterInitialization, postProcessBeforeInstantiation, postProcessProperties, predictBeanType, setAdvisorAdapterRegistry, setApplyCommonInterceptorsFirst, setCustomTargetSourceCreators, setFrozen, setInterceptorNames, shouldProxyTargetClass, wrapIfNecessary
クラス org.springframework.aop.framework.ProxyProcessorSupport から継承されたメソッド
evaluateProxyInterfaces, getOrder, getProxyClassLoader, isConfigurationCallbackInterface, isInternalLanguageInterface, setBeanClassLoader, setOrder, setProxyClassLoader
クラス org.springframework.aop.framework.ProxyConfig から継承されたメソッド
copyFrom, isExposeProxy, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setOpaque, setOptimize, setProxyTargetClass, toString
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース org.springframework.beans.factory.config.BeanPostProcessor から継承されたメソッド
postProcessBeforeInitialization
インターフェース org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor から継承されたメソッド
postProcessAfterInstantiation
コンストラクターの詳細
AspectJAwareAdvisorAutoProxyCreator
public AspectJAwareAdvisorAutoProxyCreator()
メソッドの詳細
sortAdvisors
提供されたAdvisor
インスタンスを AspectJ の優先順位に従って並べ替えます。2 つのアドバイスが同じアスペクトからのものである場合、同じ順序になります。同じアスペクトからのアドバイスは、次の規則に従ってさらに並べ替えられます。
- ペアのいずれかがアドバイスの後の場合、最後に宣言されたアドバイスが最も優先されます(つまり、最後に実行されます)。
- それ以外の場合、最初に宣言されたアドバイスが最も優先されます(つまり、最初に実行されます)。
重要 : アドバイザは、優先順位の高いものから低いものへと優先順位でソートされます。ジョインポイントへの「途中」では、最も優先度の高いアドバイザが最初に実行されます。ジョインポイントの「途中」では、最も優先度の高いアドバイザが最後に実行される必要があります。
- オーバーライド:
- クラス
AbstractAdvisorAutoProxyCreator
のsortAdvisors
- パラメーター:
advisors
- アドバイザーのソースリスト- 戻り値:
- ソートされたアドバイザのリスト
- 関連事項:
extendAdvisors
アドバイスチェーンの先頭にExposeInvocationInterceptor
を追加します。この追加のアドバイスは、AspectJ ポイントカット式を使用する場合、および AspectJ スタイルのアドバイスを使用する場合に必要です。
- オーバーライド:
- クラス
AbstractAdvisorAutoProxyCreator
のextendAdvisors
- パラメーター:
candidateAdvisors
- 特定の Bean に適用するものとしてすでに識別されているアドバイザ
shouldSkip
クラスからコピーされた説明:AbstractAutoProxyCreator
指定された Bean がこのポストプロセッサーによる自動プロキシと見なされない場合、サブクラスはこのメソッドをオーバーライドしてtrue
を返す必要があります。時々、これが起こるのを避けることができるようにする必要があります。循環参照につながる場合、または既存のターゲットインスタンスを保持する必要がある場合。この実装は、Bean 名が
AutowireCapableBeanFactory
の規則に従って「元のインスタンス」を示さない限り、false
を返します。- オーバーライド:
- クラス
AbstractAutoProxyCreator
のshouldSkip
- パラメーター:
beanClass
- Bean のクラスbeanName
- Bean の名前- 戻り値:
- 指定された Bean をスキップするかどうか
- 関連事項: