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 (e.g. "/WEB-INF/*-context.xml"): Input patterns have to match the strategy implementation. This interface just specifies the conversion method rather than a specific pattern format.
This interface also suggests a new resource prefix "classpath*:" for all matching resources from the class path. Note that the resource location is expected to be a path without placeholders in this case (e.g. "/beans.xml"); JAR files or different directories in the class path can contain multiple files of the same name.
- Since:
- 1.0.2
- Author:
- Juergen Hoeller
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Pseudo 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 intoResource
objects.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 name (e.g. "/beans.xml"), for example in the root of all deployed JAR files.
-
-
Method Details
-
getResources
Resolve the given location pattern intoResource
objects.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
Resource
objects - Throws:
IOException
- in case of I/O errors
-