Interface ResourcePatternResolver
- All Superinterfaces:
ResourceLoader
- All Known Subinterfaces:
ApplicationContext,ConfigurableApplicationContext,ConfigurableWebApplicationContext,WebApplicationContext
- All Known Implementing Classes:
AbstractApplicationContext,AbstractRefreshableApplicationContext,AbstractRefreshableConfigApplicationContext,AbstractRefreshableWebApplicationContext,AbstractXmlApplicationContext,AnnotationConfigApplicationContext,AnnotationConfigWebApplicationContext,ClassPathXmlApplicationContext,FileSystemXmlApplicationContext,GenericApplicationContext,GenericGroovyApplicationContext,GenericWebApplicationContext,GenericXmlApplicationContext,GroovyWebApplicationContext,PathMatchingResourcePatternResolver,ServletContextResourcePatternResolver,StaticApplicationContext,StaticWebApplicationContext,XmlWebApplicationContext
Resource objects.
This is an extension to the ResourceLoader
interface. A passed-in ResourceLoader (for example, an
ApplicationContext passed in via
ResourceLoaderAware when running in a context)
can be checked whether it implements this extended interface too.
PathMatchingResourcePatternResolver is a standalone implementation
that is usable outside an ApplicationContext, also used by
ResourceArrayPropertyEditor for populating Resource array bean
properties.
Can be used with any sort of location pattern — for example,
"/WEB-INF/*-context.xml". However, input patterns have to match the
strategy implementation. This interface just specifies the conversion method
rather than a specific pattern format.
This interface also defines a "classpath*:" resource
prefix for all matching resources from the module path and the class path. Note
that the resource location may also contain placeholders — for example
"/beans-*.xml". JAR files or different directories in the module path
or class path can contain multiple files of the same name.
- Since:
- 1.0.2
- Author:
- Juergen Hoeller, Sam Brannen
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringPseudo URL prefix for all matching resources from the class path:"classpath*:".Fields inherited from interface org.springframework.core.io.ResourceLoader
CLASSPATH_URL_PREFIX -
Method Summary
Modifier and TypeMethodDescriptionResource[]getResources(String locationPattern) Resolve the given location pattern intoResourceobjects.Methods inherited from interface org.springframework.core.io.ResourceLoader
getClassLoader, getResource
-
Field Details
-
CLASSPATH_ALL_URL_PREFIX
Pseudo URL prefix for all matching resources from the class path:"classpath*:".This differs from ResourceLoader's
"classpath:"URL prefix in that it retrieves all matching resources for a given path — for example, to locate all "beans.xml" files in the root of all deployed JAR files you can use the location pattern"classpath*:/beans.xml".As of Spring Framework 6.0, the semantics for the
"classpath*:"prefix have been expanded to include the module path as well as the class path.
-
-
Method Details
-
getResources
Resolve the given location pattern intoResourceobjects.Overlapping resource entries that point to the same physical resource should be avoided, as far as possible. The result should have set semantics.
- Parameters:
locationPattern- the location pattern to resolve- Returns:
- the corresponding
Resourceobjects - Throws:
IOException- in case of I/O errors
-