Top Description Fields Methods
org.springframework.core.io

public Interface ResourceLoader

Known Direct Subinterfaces
org.springframework.core.io.support.ResourcePatternResolver
Known Direct Implementers
org.springframework.core.io.DefaultResourceLoader
Imports
org.springframework.lang.Nullable, org.springframework.util.ResourceUtils

Strategy interface for loading resources (e.g., class path or file system resources). An org.springframework.context.ApplicationContext is required to provide this functionality plus extended org.springframework.core.io.support.ResourcePatternResolver support.

DefaultResourceLoader is a standalone implementation that is usable outside an ApplicationContext and is also used by ResourceEditor.

Bean properties of type Resource and Resource[] can be populated from Strings when running in an ApplicationContext, using the particular context's resource loading strategy.

Author
Juergen Hoeller
Since
10.03.2004
See Also
Resource, org.springframework.core.io.support.ResourcePatternResolver, org.springframework.context.ApplicationContext, org.springframework.context.ResourceLoaderAware

Field Summary

Modifier and TypeField and Description
public static final String
CLASSPATH_URL_PREFIX

Pseudo URL prefix for loading from the class path: "classpath:".

Method Summary

Modifier and TypeMethod and Description
public ClassLoader

Returns:

the ClassLoader (only null if even the system ClassLoader isn't accessible)
getClassLoader
()

Expose the ClassLoader used by this ResourceLoader.

public Resource

Returns:

a corresponding Resource handle (never null)
getResource
(String
the resource location
location
)

Return a Resource handle for the specified resource location.

Field Detail

CLASSPATH_URL_PREFIXback to summary
public static final String CLASSPATH_URL_PREFIX

Pseudo URL prefix for loading from the class path: "classpath:".

Method Detail

getClassLoaderback to summary
public 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:ClassLoader

the ClassLoader (only null if even the system ClassLoader isn't accessible)

Annotations
@Nullable
See Also
org.springframework.util.ClassUtils#getDefaultClassLoader(), org.springframework.util.ClassUtils#forName(String, ClassLoader)
getResourceback to summary
public 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 Resource#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:String

the resource location

Returns:Resource

a corresponding Resource handle (never null)

See Also
CLASSPATH_URL_PREFIX, Resource#exists(), Resource#getInputStream()