org.springframework.core.io.support

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:
    Resource, EncodedResource
    • Constructor Detail

      • ResourcePropertySource

        public ResourcePropertySource(java.lang.String name,
                                      EncodedResource resource)
                               throws java.io.IOException
        Create a PropertySource having the given name based on Properties loaded from the given encoded resource.
        Throws:
        java.io.IOException
      • ResourcePropertySource

        public ResourcePropertySource(EncodedResource resource)
                               throws java.io.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:
        java.io.IOException
      • ResourcePropertySource

        public ResourcePropertySource(java.lang.String name,
                                      Resource resource)
                               throws java.io.IOException
        Create a PropertySource having the given name based on Properties loaded from the given encoded resource.
        Throws:
        java.io.IOException
      • ResourcePropertySource

        public ResourcePropertySource(Resource resource)
                               throws java.io.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:
        java.io.IOException
      • ResourcePropertySource

        public ResourcePropertySource(java.lang.String name,
                                      java.lang.String location,
                                      java.lang.ClassLoader classLoader)
                               throws java.io.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:
        java.io.IOException
      • ResourcePropertySource

        public ResourcePropertySource(java.lang.String location,
                                      java.lang.ClassLoader classLoader)
                               throws java.io.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:
        java.io.IOException
      • ResourcePropertySource

        public ResourcePropertySource(java.lang.String name,
                                      java.lang.String location)
                               throws java.io.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:
        java.io.IOException
      • ResourcePropertySource

        public ResourcePropertySource(java.lang.String location)
                               throws java.io.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:
        java.io.IOException
    • Method Detail

      • withName

        public ResourcePropertySource withName(java.lang.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