public interface ResourceLoaderAware extends Aware
ResourceLoader (typically the ApplicationContext) that it runs in.
This is an alternative to a full
ApplicationContext dependency via
Resource dependencies can also
be exposed as bean properties of type
Resource, populated via Strings
with automatic type conversion by the bean factory. This removes the need for
implementing any callback interface just for the purpose of accessing a
specific file resource.
You typically need a
ResourceLoader when your application object has to
access a variety of file resources whose names are calculated. A good strategy is
to make the object use a
but still implement
ResourceLoaderAware to allow for overriding when
running in an
for an example.
ResourceLoader can also be checked for the
and cast accordingly, in order to resolve resource patterns into arrays of
Resource objects. This will always work when running in an ApplicationContext
(since the context interface extends the ResourcePatternResolver interface). Use a
default; see also the
As an alternative to a
ResourcePatternResolver dependency, consider
exposing bean properties of type
Resource array, populated via pattern
Strings with automatic type conversion by the bean factory at binding time.
void setResourceLoader(ResourceLoader resourceLoader)
This might be a ResourcePatternResolver, which can be checked
instanceof ResourcePatternResolver. See also the
Invoked after population of normal bean properties but before an init callback
afterPropertiesSet or a custom init-method.
Invoked before ApplicationContextAware's
resourceLoader - the ResourceLoader object to be used by this object