public class AnnotationAwareAspectJAutoProxyCreator extends AspectJAwareAdvisorAutoProxyCreator
AspectJAwareAdvisorAutoProxyCreator
サブクラス。AspectJ アノテーション付きクラスはすべて自動的に認識され、Spring AOP のプロキシベースのモデルがそれを適用できる場合、それらのアドバイスが適用されます。これには、メソッド実行のジョインポイントが含まれます。
<aop:include> 要素が使用されている場合、include パターンと一致する名前を持つ @AspectJ Bean のみが、Spring 自動プロキシに使用するアスペクトを定義するものと見なされます。
Spring Advisors の処理は、AbstractAdvisorAutoProxyCreator
で確立されたルールに従います。
AspectJAdvisorFactory
, 直列化された形式 DO_NOT_PROXY, logger, PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターと説明 |
---|
AnnotationAwareAspectJAutoProxyCreator() |
修飾子と型 | メソッドと説明 |
---|---|
protected ListSE<Advisor> | findCandidateAdvisors() 自動プロキシで使用するすべての候補アドバイザーを見つけます。 |
protected void | initBeanFactory(ConfigurableListableBeanFactory beanFactory) |
protected boolean | isEligibleAspectBean(StringSE beanName) 指定されたアスペクト Bean が自動プロキシに適しているかどうかを確認します。 |
protected boolean | isInfrastructureClass(ClassSE<?> beanClass) 指定された Bean クラスが、決してプロキシされるべきではないインフラストラクチャクラスを表すかどうかを返します。 |
void | setAspectJAdvisorFactory(AspectJAdvisorFactory aspectJAdvisorFactory) |
void | setIncludePatterns(ListSE<StringSE> patterns) 適格な @AspectJ Bean 名に一致する正規表現パターンのリストを設定します。 |
extendAdvisors, shouldSkip, sortAdvisors
advisorsPreFiltered, findAdvisorsThatCanApply, findEligibleAdvisors, getAdvicesAndAdvisorsForBean, isEligibleAdvisorBean, setBeanFactory
buildAdvisors, createProxy, customizeProxyFactory, determineCandidateConstructors, getBeanFactory, getCacheKey, getCustomTargetSource, getEarlyBeanReference, isFrozen, postProcessAfterInitialization, postProcessAfterInstantiation, postProcessBeforeInitialization, postProcessBeforeInstantiation, postProcessProperties, predictBeanType, setAdvisorAdapterRegistry, setApplyCommonInterceptorsFirst, setCustomTargetSourceCreators, setFrozen, setInterceptorNames, shouldProxyTargetClass, wrapIfNecessary
evaluateProxyInterfaces, getOrder, getProxyClassLoader, isConfigurationCallbackInterface, isInternalLanguageInterface, setBeanClassLoader, setOrder, setProxyClassLoader
copyFrom, isExposeProxy, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setOpaque, setOptimize, setProxyTargetClass, toString
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
postProcessPropertyValues
public void setIncludePatterns(ListSE<StringSE> patterns)
デフォルトでは、すべての @AspectJ Bean が適格であると見なされます。
public void setAspectJAdvisorFactory(AspectJAdvisorFactory aspectJAdvisorFactory)
protected void initBeanFactory(ConfigurableListableBeanFactory beanFactory)
AbstractAdvisorAutoProxyCreator
の initBeanFactory
protected ListSE<Advisor> findCandidateAdvisors()
AbstractAdvisorAutoProxyCreator
AbstractAdvisorAutoProxyCreator
の findCandidateAdvisors
protected boolean isInfrastructureClass(ClassSE<?> beanClass)
AbstractAutoProxyCreator
デフォルトの実装では、アドバイス、アドバイザ、AopInfrastructureBeans をインフラストラクチャクラスと見なします。
AbstractAutoProxyCreator
の isInfrastructureClass
beanClass
- Bean のクラス Advice
, Advisor
, AopInfrastructureBean
, AbstractAutoProxyCreator.shouldSkip(java.lang.Class<?>, java.lang.String)
protected boolean isEligibleAspectBean(StringSE beanName)
<aop:include> 要素が使用されなかった場合、"includePatterns" は null
になり、すべての Bean が含まれます。"includePatterns" が null 以外の場合、パターンの 1 つが一致する必要があります。