クラス AbstractAdvisorAutoProxyCreator
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
- 実装されているすべてのインターフェース:
SerializableSE, AopInfrastructureBean, Aware, BeanClassLoaderAware, BeanFactoryAware, BeanPostProcessor, InstantiationAwareBeanPostProcessor, SmartInstantiationAwareBeanPostProcessor, Ordered
- 既知の直属サブクラス
AspectJAwareAdvisorAutoProxyCreator, DefaultAdvisorAutoProxyCreator, InfrastructureAdvisorAutoProxyCreator
Bean ごとに検出されたアドバイザに基づいて特定の Bean の AOP プロキシを構築する汎用自動プロキシクリエーター。
サブクラスは findCandidateAdvisors() メソッドをオーバーライドして、任意のオブジェクトに適用されるアドバイザのカスタムリストを返すことができます。サブクラスは、継承された AbstractAutoProxyCreator.shouldSkip(Class, String) メソッドをオーバーライドして、特定のオブジェクトを自動プロキシから除外することもできます。
オーダーを必要とするアドバイザーまたはアドバイスには、@Order のアノテーションを付けるか、Ordered インターフェースを実装する必要があります。このクラスは、AnnotationAwareOrderComparator を使用してアドバイザーをソートします。@Order でアノテーションが付けられていない、または Ordered インターフェースを実装していないアドバイザは、順序付けされていないと見なされます。それらは、未定義の順序でアドバイザチェーンの最後に表示されます。
- 作成者:
- Rod Johnson, Juergen Hoeller
- 関連事項:
フィールドのサマリー
クラス AbstractAutoProxyCreator から継承されたフィールド
DO_NOT_PROXY, logger, PROXY_WITHOUT_ADDITIONAL_INTERCEPTORSインターフェース Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCEコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected booleanこの自動プロキシ作成者は常に事前にフィルタリングされたアドバイザを返します。protected voidextendAdvisors(ListSE<Advisor> candidateAdvisors) これまでに取得したソートされたアドバイザを前提として、サブクラスがオーバーライドして追加のアドバイザを登録できる拡張フック。findAdvisorsThatCanApply(ListSE<Advisor> candidateAdvisors, ClassSE<?> beanClass, StringSE beanName) 指定されたアドバイザ候補を検索して、指定された Bean に適用できるすべてのアドバイザを見つけます。自動プロキシで使用するすべての候補アドバイザーを見つけます。findEligibleAdvisors(ClassSE<?> beanClass, StringSE beanName) このクラスを自動プロキシするためのすべての適格なアドバイザーを見つけます。getAdvicesAndAdvisorsForBean(ClassSE<?> beanClass, StringSE beanName, @Nullable TargetSource targetSource) 指定された Bean がプロキシされるかどうか、および適用する追加のアドバイス (たとえば、AOP Alliance インターセプター) とアドバイザーを返します。protected voidinitBeanFactory(ConfigurableListableBeanFactory beanFactory) protected booleanisEligibleAdvisorBean(StringSE beanName) 指定された名前のアドバイザ Bean が最初からプロキシに適格かどうかを返します。voidsetBeanFactory(BeanFactory beanFactory) 所有ファクトリを Bean インスタンスに提供するコールバック。sortAdvisors(ListSE<Advisor> advisors) 順序付けに基づいてアドバイザーをソートします。クラス AbstractAutoProxyCreator から継承されたメソッド
buildAdvisors, createProxy, customizeProxyFactory, determineBeanType, determineCandidateConstructors, getBeanFactory, getCacheKey, getCustomTargetSource, getEarlyBeanReference, isInfrastructureClass, postProcessAfterInitialization, postProcessBeforeInstantiation, postProcessProperties, predictBeanType, setAdvisorAdapterRegistry, setApplyCommonInterceptorsFirst, setCustomTargetSourceCreators, setInterceptorNames, shouldProxyTargetClass, shouldSkip, wrapIfNecessaryクラス ProxyProcessorSupport から継承されたメソッド
evaluateProxyInterfaces, getOrder, getProxyClassLoader, isConfigurationCallbackInterface, isInternalLanguageInterface, setBeanClassLoader, setOrder, setProxyClassLoaderクラス ProxyConfig から継承されたメソッド
copyDefault, copyFrom, isExposeProxy, isFrozen, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setFrozen, setOpaque, setOptimize, setProxyTargetClass, toStringクラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース BeanPostProcessor から継承されたメソッド
postProcessBeforeInitializationインターフェース InstantiationAwareBeanPostProcessor から継承されたメソッド
postProcessAfterInstantiation
コンストラクターの詳細
AbstractAdvisorAutoProxyCreator
public AbstractAdvisorAutoProxyCreator()
メソッドの詳細
setBeanFactory
インターフェースからコピーされた説明:BeanFactoryAware所有ファクトリを Bean インスタンスに提供するコールバック。通常の Bean プロパティの設定後、ただし
InitializingBean.afterPropertiesSet()またはカスタム init-method などの初期化コールバックの前に呼び出されます。- 次で指定:
- インターフェース
BeanFactoryAwareのsetBeanFactory - オーバーライド:
- クラス
AbstractAutoProxyCreatorのsetBeanFactory - パラメーター:
beanFactory- 所有 BeanFactory(非null)。Bean は、ファクトリのメソッドをすぐに呼び出すことができます。- 関連事項:
initBeanFactory
getAdvicesAndAdvisorsForBean
protected ObjectSE @Nullable [] getAdvicesAndAdvisorsForBean(ClassSE<?> beanClass, StringSE beanName, @Nullable TargetSource targetSource) クラスからコピーされた説明:AbstractAutoProxyCreator指定された Bean がプロキシされるかどうか、および適用する追加のアドバイス (たとえば、AOP Alliance インターセプター) とアドバイザーを返します。- 次で指定:
- クラス
AbstractAutoProxyCreatorのgetAdvicesAndAdvisorsForBean - パラメーター:
beanClass- アドバイスする Bean のクラスbeanName- Bean の名前targetSource-AbstractAutoProxyCreator.getCustomTargetSource(Class, String)メソッドによって返された TargetSource: は無視できます。カスタムターゲットソースが使用されていない場合は、nullになります。- 戻り値:
- 特定の Bean の追加インターセプターの配列。または追加のインターセプターではなく、一般的なインターセプターのみの場合は空の配列。または、プロキシがまったくない場合は
nullで、一般的なインターセプターさえ使用していません。定数 DO_NOT_PROXY および PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS を参照してください。 - 関連事項:
findEligibleAdvisors
findCandidateAdvisors
findAdvisorsThatCanApply
isEligibleAdvisorBean
指定された名前のアドバイザ Bean が最初からプロキシに適格かどうかを返します。- パラメーター:
beanName- アドバイザ Bean の名前- 戻り値:
- Bean が適格かどうか
sortAdvisors
extendAdvisors
advisorsPreFiltered
protected boolean advisorsPreFiltered()この自動プロキシ作成者は常に事前にフィルタリングされたアドバイザを返します。- オーバーライド:
- クラス
AbstractAutoProxyCreatorのadvisorsPreFiltered - 戻り値:
- アドバイザが事前にフィルタリングされているかどうか
- 関連事項: