接口 TransactionAttributeSource
- 所有已知实现类:
AbstractFallbackTransactionAttributeSource
,AnnotationTransactionAttributeSource
,CompositeTransactionAttributeSource
,MatchAlwaysTransactionAttributeSource
,MethodMapTransactionAttributeSource
,NameMatchTransactionAttributeSource
public interface TransactionAttributeSource
Strategy interface used byTransactionInterceptor
for metadata retrieval.Implementations know how to source transaction attributes, whether from configuration, metadata attributes at source level (such as Java 5 annotations), or anywhere else.
- 从以下版本开始:
- 15.04.2003
- 作者:
- Rod Johnson, Juergen Hoeller
- 另请参阅:
TransactionAspectSupport.setTransactionAttributeSource(org.springframework.transaction.interceptor.TransactionAttributeSource)
,TransactionProxyFactoryBean.setTransactionAttributeSource(org.springframework.transaction.interceptor.TransactionAttributeSource)
,AnnotationTransactionAttributeSource
方法概要
所有方法 实例方法 抽象方法 默认方法 修饰符和类型 方法 说明 TransactionAttribute
getTransactionAttribute(Method method, Class<?> targetClass)
Return the transaction attribute for the given method, ornull
if the method is non-transactional.default boolean
isCandidateClass(Class<?> targetClass)
Determine whether the given class is a candidate for transaction attributes in the metadata format of thisTransactionAttributeSource
.
方法详细资料
isCandidateClass
default boolean isCandidateClass(Class<?> targetClass)
Determine whether the given class is a candidate for transaction attributes in the metadata format of thisTransactionAttributeSource
.If this method returns
false
, the methods on the given class will not get traversed forgetTransactionAttribute(java.lang.reflect.Method, java.lang.Class<?>)
introspection. Returningfalse
is therefore an optimization for non-affected classes, whereastrue
simply means that the class needs to get fully introspected for each method on the given class individually.- 参数:
targetClass
- the class to introspect- 返回:
false
if the class is known to have no transaction attributes at class or method level;true
otherwise. The default implementation returnstrue
, leading to regular introspection.- 从以下版本开始:
- 5.2
getTransactionAttribute
@Nullable TransactionAttribute getTransactionAttribute(Method method, @Nullable Class<?> targetClass)
Return the transaction attribute for the given method, ornull
if the method is non-transactional.- 参数:
method
- the method to introspecttargetClass
- the target class (may benull
, in which case the declaring class of the method must be used)- 返回:
- the matching transaction attribute, or
null
if none found