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
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 name (e.g. "/beans.xml"), for example in the root of all deployed JAR files.
-
-
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
-