org.springframework.core.io.support

## 类 ResourcePropertySource

- java.lang.Object
- - org.springframework.core.env.PropertySource<T>
  - - org.springframework.core.env.EnumerablePropertySource<Map<String,Object>>
    - - org.springframework.core.env.MapPropertySource
      - - org.springframework.core.env.PropertiesPropertySource
        - - org.springframework.core.io.support.ResourcePropertySource

-     public class ResourcePropertySource
      extends PropertiesPropertySource

  Subclass of `PropertiesPropertySource` that loads a `Properties` object from a given `Resource` or resource location such as `"classpath:/com/myco/foo.properties"` or `"file:/path/to/file.xml"`.

  Both traditional and XML-based properties file formats are supported; however, in order for XML processing to take effect, the underlying `Resource`'s `getFilename()` method must return a non-`null` value that ends in `".xml"`.

  从以下版本开始:
    3.1
  作者:
    Chris Beams, Juergen Hoeller
  另请参阅:
    `Resource`, `EncodedResource`

- - ### 嵌套类概要

    - ### 从类继承的嵌套类/接口 org.springframework.core.env.PropertySource

      `PropertySource.StubPropertySource`

  - ### 字段概要

    - ### 从类继承的字段 org.springframework.core.env.PropertySource

      `logger, name, source`

  - ### 构造器概要

    构造器
    构造器和说明
    `ResourcePropertySource(EncodedResource resource)` Create a PropertySource based on Properties loaded from the given resource.
    `ResourcePropertySource(Resource resource)` Create a PropertySource based on Properties loaded from the given resource.
    `ResourcePropertySource(String location)` Create a PropertySource based on Properties loaded from the given resource location.
    `ResourcePropertySource(String location, ClassLoader classLoader)` Create a PropertySource based on Properties loaded from the given resource location and use the given class loader to load the resource, assuming it is prefixed with `classpath:`.
    `ResourcePropertySource(String name, EncodedResource resource)` Create a PropertySource having the given name based on Properties loaded from the given encoded resource.
    `ResourcePropertySource(String name, Resource resource)` Create a PropertySource having the given name based on Properties loaded from the given encoded resource.
    `ResourcePropertySource(String name, String location)` Create a PropertySource having the given name based on Properties loaded from the given resource location.
    `ResourcePropertySource(String name, String location, ClassLoader classLoader)` Create a PropertySource having the given name based on Properties loaded from the given resource location and using the given class loader to load the resource (assuming it is prefixed with `classpath:`).

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `ResourcePropertySource` | `withName(String name)` Return a potentially adapted variant of this `ResourcePropertySource`, overriding the previously given (or derived) name with the specified name.
    `ResourcePropertySource` | `withResourceName()` Return a potentially adapted variant of this `ResourcePropertySource`, overriding the previously given name (if any) with the original resource name (equivalent to the name generated by the name-less constructor variants).

    - ### 从类继承的方法 org.springframework.core.env.PropertiesPropertySource

      `getPropertyNames`

    - ### 从类继承的方法 org.springframework.core.env.MapPropertySource

      `containsProperty, getProperty`

    - ### 从类继承的方法 org.springframework.core.env.PropertySource

      `equals, getName, getSource, hashCode, named, toString`

    - ### 从类继承的方法 java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### 构造器详细资料

    - #### ResourcePropertySource

          public ResourcePropertySource(String name,
                                        EncodedResource resource)
                                 throws IOException

      Create a PropertySource having the given name based on Properties loaded from the given encoded resource.
      抛出:
        `IOException`

    - #### ResourcePropertySource

          public ResourcePropertySource(EncodedResource resource)
                                 throws IOException

      Create a PropertySource based on Properties loaded from the given resource. The name of the PropertySource will be generated based on the `description` of the given resource.
      抛出:
        `IOException`

    - #### ResourcePropertySource

          public ResourcePropertySource(String name,
                                        Resource resource)
                                 throws IOException

      Create a PropertySource having the given name based on Properties loaded from the given encoded resource.
      抛出:
        `IOException`

    - #### ResourcePropertySource

          public ResourcePropertySource(Resource resource)
                                 throws IOException

      Create a PropertySource based on Properties loaded from the given resource. The name of the PropertySource will be generated based on the `description` of the given resource.
      抛出:
        `IOException`

    - #### ResourcePropertySource

          public ResourcePropertySource(String name,
                                        String location,
                                        ClassLoader classLoader)
                                 throws IOException

      Create a PropertySource having the given name based on Properties loaded from the given resource location and using the given class loader to load the resource (assuming it is prefixed with `classpath:`).
      抛出:
        `IOException`

    - #### ResourcePropertySource

          public ResourcePropertySource(String location,
                                        ClassLoader classLoader)
                                 throws IOException

      Create a PropertySource based on Properties loaded from the given resource location and use the given class loader to load the resource, assuming it is prefixed with `classpath:`. The name of the PropertySource will be generated based on the `description` of the resource.
      抛出:
        `IOException`

    - #### ResourcePropertySource

          public ResourcePropertySource(String name,
                                        String location)
                                 throws IOException

      Create a PropertySource having the given name based on Properties loaded from the given resource location. The default thread context class loader will be used to load the resource (assuming the location string is prefixed with `classpath:`.
      抛出:
        `IOException`

    - #### ResourcePropertySource

          public ResourcePropertySource(String location)
                                 throws IOException

      Create a PropertySource based on Properties loaded from the given resource location. The name of the PropertySource will be generated based on the `description` of the resource.
      抛出:
        `IOException`

  - ### 方法详细资料

    - #### withName

          public ResourcePropertySource withName(String name)

      Return a potentially adapted variant of this `ResourcePropertySource`, overriding the previously given (or derived) name with the specified name.
      从以下版本开始:
        4.0.4

    - #### withResourceName

          public ResourcePropertySource withResourceName()

      Return a potentially adapted variant of this `ResourcePropertySource`, overriding the previously given name (if any) with the original resource name (equivalent to the name generated by the name-less constructor variants).
      从以下版本开始:
        4.1