Class 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".

Since:
3.1
Author:
Chris Beams, Juergen Hoeller
See Also:
  • Constructor Details

    • 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.
      Throws:
      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.
      Throws:
      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.
      Throws:
      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.
      Throws:
      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:).
      Throws:
      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.
      Throws:
      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:).
      Throws:
      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.
      Throws:
      IOException
  • Method Details

    • 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.
      Since:
      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).
      Since:
      4.1