Package org.springframework.core.io
Interface ResourceLoader
- All Known Subinterfaces:
ApplicationContext
,ConfigurableApplicationContext
,ConfigurableWebApplicationContext
,ResourcePatternResolver
,WebApplicationContext
- All Known Implementing Classes:
AbstractApplicationContext
,AbstractRefreshableApplicationContext
,AbstractRefreshableConfigApplicationContext
,AbstractRefreshableWebApplicationContext
,AbstractXmlApplicationContext
,AnnotationConfigApplicationContext
,AnnotationConfigWebApplicationContext
,ClassPathXmlApplicationContext
,ClassRelativeResourceLoader
,DefaultResourceLoader
,FileSystemResourceLoader
,FileSystemXmlApplicationContext
,GenericApplicationContext
,GenericGroovyApplicationContext
,GenericWebApplicationContext
,GenericXmlApplicationContext
,GroovyWebApplicationContext
,PathMatchingResourcePatternResolver
,ResourceAdapterApplicationContext
,ServletContextResourceLoader
,ServletContextResourcePatternResolver
,StaticApplicationContext
,StaticWebApplicationContext
,XmlWebApplicationContext
public interface ResourceLoader
Strategy interface for loading resources (e.. class path or file system resources). AnApplicationContext
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
,ApplicationContext
,ResourceLoaderAware
Field Summary
Fields Modifier and Type Field Description static String
CLASSPATH_URL_PREFIX
Pseudo URL prefix for loading from the class path: "classpath:".
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ClassLoader
getClassLoader()
Expose the ClassLoader used by this ResourceLoader.Resource
getResource(String location)
Return a Resource handle for the specified resource location.
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 location.The handle should always be a reusable resource descriptor, allowing for multiple
InputStreamSource.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 (never
null
) - See Also:
CLASSPATH_URL_PREFIX
,Resource.exists()
,InputStreamSource.getInputStream()
getClassLoader
@Nullable 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()
,ClassUtils.forName(String, ClassLoader)