类 AnnotationConfigContextLoader
- java.lang.Object
- org.springframework.test.context.support.AbstractContextLoader
- org.springframework.test.context.support.AbstractGenericContextLoader
- org.springframework.test.context.support.AnnotationConfigContextLoader
- 所有已实现的接口:
ContextLoader,SmartContextLoader
public class AnnotationConfigContextLoader extends AbstractGenericContextLoader
Concrete implementation ofAbstractGenericContextLoaderthat loads bean definitions from component classes.See the Javadoc for
@ContextConfigurationfor a definition of component class.Note:
AnnotationConfigContextLoadersupports component classes rather than the String-based resource locations defined by the legacyContextLoaderAPI. Thus, althoughAnnotationConfigContextLoaderextendsAbstractGenericContextLoader,AnnotationConfigContextLoaderdoes not support any String-based methods defined byAbstractContextLoaderorAbstractGenericContextLoader. Consequently,AnnotationConfigContextLoadershould chiefly be considered aSmartContextLoaderrather than aContextLoader.
构造器概要
构造器 构造器 说明 AnnotationConfigContextLoader()
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 protected BeanDefinitionReadercreateBeanDefinitionReader(GenericApplicationContext context)AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader.protected Class<?>[]detectDefaultConfigurationClasses(Class<?> declaringClass)Detect the default configuration classes for the supplied test class.protected String[]generateDefaultLocations(Class<?> clazz)AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader.protected StringgetResourceSuffix()AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader.protected voidloadBeanDefinitions(GenericApplicationContext context, MergedContextConfiguration mergedConfig)Register classes in the suppliedcontextfrom the classes in the suppliedMergedContextConfiguration.protected String[]modifyLocations(Class<?> clazz, String... locations)AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader.voidprocessContextConfiguration(ContextConfigurationAttributes configAttributes)Process component classes in the suppliedContextConfigurationAttributes.protected voidvalidateMergedContextConfiguration(MergedContextConfiguration mergedConfig)Ensure that the suppliedMergedContextConfigurationdoes not containlocations.从类继承的方法 org.springframework.test.context.support.AbstractGenericContextLoader
createContext, customizeBeanFactory, customizeContext, loadContext, loadContext, prepareContext
从类继承的方法 org.springframework.test.context.support.AbstractContextLoader
customizeContext, getResourceSuffixes, isGenerateDefaultLocations, prepareContext, processLocations
构造器详细资料
AnnotationConfigContextLoader
public AnnotationConfigContextLoader()
方法详细资料
processContextConfiguration
public void processContextConfiguration(ContextConfigurationAttributes configAttributes)
Process component classes in the suppliedContextConfigurationAttributes.If the component classes are
nullor empty andAbstractContextLoader.isGenerateDefaultLocations()returnstrue, thisSmartContextLoaderwill attempt todetect default configuration classes. If defaults are detected they will besetin the supplied configuration attributes. Otherwise, properties in the supplied configuration attributes will not be modified.- 指定者:
processContextConfiguration在接口中SmartContextLoader- 覆盖:
processContextConfiguration在类中AbstractContextLoader- 参数:
configAttributes- the context configuration attributes to process- 另请参阅:
SmartContextLoader.processContextConfiguration(ContextConfigurationAttributes),AbstractContextLoader.isGenerateDefaultLocations(),detectDefaultConfigurationClasses(Class)
detectDefaultConfigurationClasses
protected Class<?>[] detectDefaultConfigurationClasses(Class<?> declaringClass)
Detect the default configuration classes for the supplied test class.The default implementation simply delegates to
AnnotationConfigContextLoaderUtils.detectDefaultConfigurationClasses(Class).- 参数:
declaringClass- the test class that declared@ContextConfiguration- 返回:
- an array of default configuration classes, potentially empty but never
null - 另请参阅:
AnnotationConfigContextLoaderUtils
modifyLocations
protected String[] modifyLocations(Class<?> clazz, String... locations)
AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader. Consequently, this method is not supported.- 覆盖:
modifyLocations在类中AbstractContextLoader- 参数:
clazz- the class with which the locations are associatedlocations- the resource locations to be modified- 返回:
- an array of modified application context resource locations
- 抛出:
UnsupportedOperationException- in this implementation- 另请参阅:
AbstractContextLoader.modifyLocations(java.lang.Class<?>, java.lang.String...)
generateDefaultLocations
protected String[] generateDefaultLocations(Class<?> clazz)
AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader. Consequently, this method is not supported.- 覆盖:
generateDefaultLocations在类中AbstractContextLoader- 参数:
clazz- the class for which the default locations are to be generated- 返回:
- an array of default application context resource locations
- 抛出:
UnsupportedOperationException- in this implementation- 另请参阅:
AbstractContextLoader.generateDefaultLocations(java.lang.Class<?>)
getResourceSuffix
protected String getResourceSuffix()
AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader. Consequently, this method is not supported.- 指定者:
getResourceSuffix在类中AbstractContextLoader- 返回:
- the resource suffix; never
nullor empty - 抛出:
UnsupportedOperationException- in this implementation- 另请参阅:
AbstractContextLoader.getResourceSuffix()
validateMergedContextConfiguration
protected void validateMergedContextConfiguration(MergedContextConfiguration mergedConfig)
Ensure that the suppliedMergedContextConfigurationdoes not containlocations.- 覆盖:
validateMergedContextConfiguration在类中AbstractGenericContextLoader- 参数:
mergedConfig- the merged configuration to validate- 从以下版本开始:
- 4.0.4
- 另请参阅:
AbstractGenericContextLoader.validateMergedContextConfiguration(org.springframework.test.context.MergedContextConfiguration)
loadBeanDefinitions
protected void loadBeanDefinitions(GenericApplicationContext context, MergedContextConfiguration mergedConfig)
Register classes in the suppliedcontextfrom the classes in the suppliedMergedContextConfiguration.Each class must represent a component class. An
AnnotatedBeanDefinitionReaderis used to register the appropriate bean definitions.Note that this method does not call
createBeanDefinitionReader(org.springframework.context.support.GenericApplicationContext)sinceAnnotatedBeanDefinitionReaderis not an instance ofBeanDefinitionReader.- 覆盖:
loadBeanDefinitions在类中AbstractGenericContextLoader- 参数:
context- the context in which the component classes should be registeredmergedConfig- the merged configuration from which the classes should be retrieved- 另请参阅:
AbstractGenericContextLoader.loadBeanDefinitions(org.springframework.context.support.GenericApplicationContext, org.springframework.test.context.MergedContextConfiguration)
createBeanDefinitionReader
protected BeanDefinitionReader createBeanDefinitionReader(GenericApplicationContext context)
AnnotationConfigContextLoadershould be used as aSmartContextLoader, not as a legacyContextLoader. Consequently, this method is not supported.- 指定者:
createBeanDefinitionReader在类中AbstractGenericContextLoader- 参数:
context- the context for which theBeanDefinitionReadershould be created- 返回:
- a
BeanDefinitionReaderfor the supplied context - 抛出:
UnsupportedOperationException- in this implementation- 另请参阅:
loadBeanDefinitions(org.springframework.context.support.GenericApplicationContext, org.springframework.test.context.MergedContextConfiguration),AbstractGenericContextLoader.createBeanDefinitionReader(org.springframework.context.support.GenericApplicationContext)