接口 ContextLoader

所有已知子接口:
AotContextLoader, SmartContextLoader
所有已知实现类:
AbstractContextLoader, AbstractDelegatingSmartContextLoader, AbstractGenericContextLoader, AbstractGenericWebContextLoader, AnnotationConfigContextLoader, AnnotationConfigWebContextLoader, DelegatingSmartContextLoader, GenericPropertiesContextLoader, GenericXmlContextLoader, GenericXmlWebContextLoader, InfraApplicationContextLoader, WebDelegatingSmartContextLoader

public interface ContextLoader
Strategy interface for loading an application context for an integration test managed by the TestContext Framework.

Note: implement SmartContextLoader instead of this interface in order to provide support for annotated classes, active bean definition profiles, and application context initializers.

Clients of a ContextLoader should call processLocations() prior to calling loadContext() in case the ContextLoader provides custom support for modifying or generating locations. The results of processLocations() should then be supplied to loadContext().

Concrete implementations must provide a public no-args constructor.

provides the following out-of-the-box implementations:

从以下版本开始:
4.0
作者:
Sam Brannen, Juergen Hoeller, Harry Yang
另请参阅:
  • 方法概要

    修饰符和类型
    方法
    说明
    cn.taketoday.context.ApplicationContext
    loadContext(String... locations)
    Loads a new ApplicationContext based on the supplied locations, configures the context, and finally returns the context in fully refreshed state.
    processLocations(Class<?> clazz, String... locations)
    Processes application context resource locations for a specified class.
  • 方法详细资料

    • processLocations

      String[] processLocations(Class<?> clazz, String... locations)
      Processes application context resource locations for a specified class.

      Concrete implementations may choose to modify the supplied locations, generate new locations, or simply return the supplied locations unchanged.

      参数:
      clazz - the class with which the locations are associated: used to determine how to process the supplied locations
      locations - the unmodified locations to use for loading the application context (can be null or empty)
      返回:
      an array of application context resource locations
    • loadContext

      cn.taketoday.context.ApplicationContext loadContext(String... locations) throws Exception
      Loads a new ApplicationContext based on the supplied locations, configures the context, and finally returns the context in fully refreshed state.

      Configuration locations are generally considered to be classpath resources by default.

      Concrete implementations should register annotation configuration processors with bean factories of application contexts loaded by this ContextLoader. Beans will therefore automatically be candidates for annotation-based dependency injection using @Autowired, @Resource, and @Inject.

      Any ApplicationContext loaded by a ContextLoader must register a JVM shutdown hook for itself. Unless the context gets closed early, all context instances will be automatically closed on JVM shutdown. This allows for freeing external resources held by beans within the context, e.g. temporary files.

      参数:
      locations - the resource locations to use to load the application context
      返回:
      a new application context
      抛出:
      Exception - if context loading failed