Also: SpringBeans
public interface

BeanDefinitionReader

org.springframework.beans.factory.support.BeanDefinitionReader
Known Indirect Subclasses

Class Overview

Simple interface for bean definition readers. Specifies load methods with Resource parameters.

Concrete bean definition readers can of course add additional load and register methods for bean definitions, specific to their bean definition format.

Note that a bean definition reader does not have to implement this interface. It only serves as suggestion for bean definition readers that want to follow standard naming conventions.

See Also

Summary

Public Methods
abstract ClassLoader getBeanClassLoader()
Return the class loader to use for bean classes.
abstract BeanNameGenerator getBeanNameGenerator()
Return the BeanNameGenerator to use for anonymous beans (without explicit bean name specified).
abstract BeanDefinitionRegistry getRegistry()
Return the bean factory to register the bean definitions with.
abstract ResourceLoader getResourceLoader()
Return the resource loader to use for resource locations.
abstract int loadBeanDefinitions(Resource... resources)
Load bean definitions from the specified resources.
abstract int loadBeanDefinitions(Resource resource)
Load bean definitions from the specified resource.
abstract int loadBeanDefinitions(String location)
Load bean definitions from the specified resource location.
abstract int loadBeanDefinitions(String... locations)
Load bean definitions from the specified resource locations.

Public Methods

public abstract ClassLoader getBeanClassLoader ()

Also: SpringBeans

Return the class loader to use for bean classes.

null suggests to not load bean classes eagerly but rather to just register bean definitions with class names, with the corresponding Classes to be resolved later (or never).

public abstract BeanNameGenerator getBeanNameGenerator ()

Also: SpringBeans

Return the BeanNameGenerator to use for anonymous beans (without explicit bean name specified).

public abstract BeanDefinitionRegistry getRegistry ()

Also: SpringBeans

Return the bean factory to register the bean definitions with.

The factory is exposed through the BeanDefinitionRegistry interface, encapsulating the methods that are relevant for bean definition handling.

public abstract ResourceLoader getResourceLoader ()

Also: SpringBeans

Return the resource loader to use for resource locations. Can be checked for the ResourcePatternResolver interface and cast accordingly, for loading multiple resources for a given resource pattern.

Null suggests that absolute resource loading is not available for this bean definition reader.

This is mainly meant to be used for importing further resources from within a bean definition resource, for example via the "import" tag in XML bean definitions. It is recommended, however, to apply such imports relative to the defining resource; only explicit full resource locations will trigger absolute resource loading.

There is also a loadBeanDefinitions(String) method available, for loading bean definitions from a resource location (or location pattern). This is a convenience to avoid explicit ResourceLoader handling.

public abstract int loadBeanDefinitions (Resource... resources)

Load bean definitions from the specified resources.

Parameters
resources the resource descriptors
Returns
  • the number of bean definitions found
Throws
BeanDefinitionStoreException in case of loading or parsing errors

public abstract int loadBeanDefinitions (Resource resource)

Load bean definitions from the specified resource.

Parameters
resource the resource descriptor
Returns
  • the number of bean definitions found
Throws
BeanDefinitionStoreException in case of loading or parsing errors

public abstract int loadBeanDefinitions (String location)

Load bean definitions from the specified resource location.

The location can also be a location pattern, provided that the ResourceLoader of this bean definition reader is a ResourcePatternResolver.

Parameters
location the resource location, to be loaded with the ResourceLoader (or ResourcePatternResolver) of this bean definition reader
Returns
  • the number of bean definitions found
Throws
BeanDefinitionStoreException in case of loading or parsing errors

public abstract int loadBeanDefinitions (String... locations)

Load bean definitions from the specified resource locations.

Parameters
locations the resource locations, to be loaded with the ResourceLoader (or ResourcePatternResolver) of this bean definition reader
Returns
  • the number of bean definitions found
Throws
BeanDefinitionStoreException in case of loading or parsing errors