Interface ResourceLoaderAware
- All Superinterfaces:
Aware
- All Known Implementing Classes:
AnnotationSessionFactoryBean,ClassPathBeanDefinitionScanner,ClassPathScanningCandidateComponentProvider,ConfigurationClassPostProcessor,DefaultPersistenceUnitManager,FreeMarkerConfigurationFactoryBean,FreeMarkerConfigurer,LocalContainerEntityManagerFactoryBean,LocalSessionFactoryBean,LocalSessionFactoryBean,ReloadableResourceBundleMessageSource,SchedulerAccessor,SchedulerAccessorBean,SchedulerFactoryBean,ScriptFactoryPostProcessor,SortedResourcesFactoryBean,VelocityConfigurer,VelocityEngineFactoryBean
public interface ResourceLoaderAware extends Aware
Interface to be implemented by any object that wishes to be notified of theResourceLoader(typically the ApplicationContext) that it runs in. This is an alternative to a fullApplicationContextdependency via theApplicationContextAwareinterface.Note that
Resourcedependencies can also be exposed as bean properties of typeResource, 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
ResourceLoaderwhen your application object has to access a variety of file resources whose names are calculated. A good strategy is to make the object use aDefaultResourceLoaderbut still implementResourceLoaderAwareto allow for overriding when running in anApplicationContext. SeeReloadableResourceBundleMessageSourcefor an example.A passed-in
ResourceLoadercan also be checked for theResourcePatternResolverinterface and cast accordingly, in order to resolve resource patterns into arrays ofResourceobjects. This will always work when running in an ApplicationContext (since the context interface extends the ResourcePatternResolver interface). Use aPathMatchingResourcePatternResolveras default; see also theResourcePatternUtils.getResourcePatternResolvermethod.As an alternative to a
ResourcePatternResolverdependency, consider exposing bean properties of typeResourcearray, populated via pattern Strings with automatic type conversion by the bean factory at binding time.- Since:
- 10.03.2004
- Author:
- Juergen Hoeller, Chris Beams
- See Also:
ApplicationContextAware,Resource,ResourceLoader,ResourcePatternResolver
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidsetResourceLoader(ResourceLoader resourceLoader)Set the ResourceLoader that this object runs in.
Method Detail
setResourceLoader
void setResourceLoader(ResourceLoader resourceLoader)
Set the ResourceLoader that this object runs in.This might be a ResourcePatternResolver, which can be checked through
instanceof ResourcePatternResolver. See also theResourcePatternUtils.getResourcePatternResolvermethod.Invoked after population of normal bean properties but before an init callback like InitializingBean's
afterPropertiesSetor a custom init-method. Invoked before ApplicationContextAware'ssetApplicationContext.- Parameters:
resourceLoader- the ResourceLoader object to be used by this object- See Also:
ResourcePatternResolver,ResourcePatternUtils.getResourcePatternResolver(org.springframework.core.io.ResourceLoader)