org.springframework.core.io
Interface ResourceLoader
-
- All Known Subinterfaces:
- ResourcePatternResolver
- All Known Implementing Classes:
- ClassRelativeResourceLoader, DefaultResourceLoader, FileSystemResourceLoader, PathMatchingResourcePatternResolver
public interface ResourceLoader
Strategy interface for loading resources (e.. class path or file system resources). Anorg.springframework.context.ApplicationContext
is required to provide this functionality, plus extendedResourcePatternResolver
support.DefaultResourceLoader
is a standalone implementation that is usable outside an ApplicationContext, also used byResourceEditor
.Bean properties of type Resource and Resource array can be populated from Strings when running in an ApplicationContext, using the particular context's resource loading strategy.
- Since:
- 10.03.2004
- Author:
- Juergen Hoeller
- See Also:
-
Resource
,ResourcePatternResolver
,org.springframework.context.ApplicationContext
,org.springframework.context.ResourceLoaderAware
-
Field Summary
Fields Modifier and Type Field and Description static String
CLASSPATH_URL_PREFIX
Pseudo URL prefix for loading from the class path: "classpath:"
Method Summary
Methods Modifier and Type Method and Description ClassLoader
getClassLoader()
Expose the ClassLoader used by this ResourceLoader.Resource
getResource(String location)
Return a Resource handle for the specified resource.
-
Field Detail
CLASSPATH_URL_PREFIX
static final String CLASSPATH_URL_PREFIX
Pseudo URL prefix for loading from the class path: "classpath:"- See Also:
- Constant Field Values
Method Detail
getResource
Resource getResource(String location)
Return a Resource handle for the specified resource. The handle should always be a reusable resource descriptor, allowing for multipleInputStreamSource.getInputStream()
calls.- Must support fully qualified URLs, e.g. "file:C:/test.dat".
- Must support classpath pseudo-URLs, e.g. "classpath:test.dat".
- Should support relative file paths, e.g. "WEB-INF/test.dat". (This will be implementation-specific, typically provided by an ApplicationContext implementation.)
Note that a Resource handle does not imply an existing resource; you need to invoke
Resource.exists()
to check for existence.- Parameters:
-
location
- the resource location - Returns:
- a corresponding Resource handle
- See Also:
-
CLASSPATH_URL_PREFIX
,Resource.exists()
,InputStreamSource.getInputStream()
getClassLoader
ClassLoader getClassLoader()
Expose the ClassLoader used by this ResourceLoader.Clients which need to access the ClassLoader directly can do so in a uniform manner with the ResourceLoader, rather than relying on the thread context ClassLoader.
- Returns:
-
the ClassLoader (only
null
if even the system ClassLoader isn't accessible) - See Also:
-
ClassUtils.getDefaultClassLoader()