org.springframework.context

## 接口 ResourceLoaderAware

- 所有超级接口:
    org.springframework.beans.factory.Aware
  所有已知实现类:
    ClassPathBeanDefinitionScanner, ClassPathScanningCandidateComponentProvider, ConfigurationClassPostProcessor, ReloadableResourceBundleMessageSource, ScriptFactoryPostProcessor

      public interface ResourceLoaderAware
      extends org.springframework.beans.factory.Aware

  Interface to be implemented by any object that wishes to be notified of the `ResourceLoader` (typically the ApplicationContext) that it runs in. This is an alternative to a full `ApplicationContext` dependency via the `ApplicationContextAware` interface.

  Note that `Resource` dependencies can also be exposed as bean properties of type `Resource`, populated via Strings with automatic type conversion by the bean factory. This removes the need for implementing any callback interface just for the purpose of accessing a specific file resource.

  You typically need a `ResourceLoader` when your application object has to access a variety of file resources whose names are calculated. A good strategy is to make the object use a `DefaultResourceLoader` but still implement `ResourceLoaderAware` to allow for overriding when running in an `ApplicationContext`. See `ReloadableResourceBundleMessageSource` for an example.

  A passed-in `ResourceLoader` can also be checked for the `ResourcePatternResolver` interface and cast accordingly, in order to resolve resource patterns into arrays of `Resource` objects. This will always work when running in an ApplicationContext (since the context interface extends the ResourcePatternResolver interface). Use a `PathMatchingResourcePatternResolver` as default; see also the `ResourcePatternUtils.getResourcePatternResolver` method.

  As an alternative to a `ResourcePatternResolver` dependency, consider exposing bean properties of type `Resource` array, populated via pattern Strings with automatic type conversion by the bean factory at binding time.

  从以下版本开始:
    10.03.2004
  作者:
    Juergen Hoeller, Chris Beams
  另请参阅:
    `ApplicationContextAware`, `Resource`, `ResourceLoader`, `ResourcePatternResolver`

- - ### 方法概要

    所有方法 实例方法 抽象方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | `setResourceLoader(org.springframework.core.io.ResourceLoader resourceLoader)` Set the ResourceLoader that this object runs in.

- - ### 方法详细资料

    - #### setResourceLoader

          void setResourceLoader(org.springframework.core.io.ResourceLoader resourceLoader)

      Set the ResourceLoader that this object runs in.

      This might be a ResourcePatternResolver, which can be checked through `instanceof ResourcePatternResolver`. See also the `ResourcePatternUtils.getResourcePatternResolver` method.

      Invoked after population of normal bean properties but before an init callback like InitializingBean's `afterPropertiesSet` or a custom init-method. Invoked before ApplicationContextAware's `setApplicationContext`.

      参数:
        `resourceLoader` - the ResourceLoader object to be used by this object
      另请参阅:
        `ResourcePatternResolver`, `ResourcePatternUtils.getResourcePatternResolver(org.springframework.core.io.ResourceLoader)`