Interface BeanDefinitionReader
- All Known Implementing Classes:
AbstractBeanDefinitionReader
,GroovyBeanDefinitionReader
,PropertiesBeanDefinitionReader
,XmlBeanDefinitionReader
Resource
and String
location 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 a suggestion for bean definition readers that want to follow standard naming conventions.
- Since:
- 1.1
- Author:
- Juergen Hoeller
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionReturn the class loader to use for bean classes.Return theBeanNameGenerator
to use for anonymous beans (without explicit bean name specified).Return the bean factory to register the bean definitions with.Return theResourceLoader
to use for resource locations.int
loadBeanDefinitions
(String location) Load bean definitions from the specified resource location.int
loadBeanDefinitions
(String... locations) Load bean definitions from the specified resource locations.int
loadBeanDefinitions
(Resource resource) Load bean definitions from the specified resource.int
loadBeanDefinitions
(Resource... resources) Load bean definitions from the specified resources.
-
Method Details
-
getRegistry
BeanDefinitionRegistry getRegistry()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. -
getResourceLoader
Return theResourceLoader
to use for resource locations.Can be checked for the
ResourcePatternResolver
interface and cast accordingly, for loading multiple resources for a given resource pattern.A
null
return value 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 path based 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 explicitResourceLoader
handling. -
getBeanClassLoader
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). -
getBeanNameGenerator
BeanNameGenerator getBeanNameGenerator()Return theBeanNameGenerator
to use for anonymous beans (without explicit bean name specified). -
loadBeanDefinitions
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
-
loadBeanDefinitions
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
-
loadBeanDefinitions
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 aResourcePatternResolver
.- Parameters:
location
- the resource location, to be loaded with theResourceLoader
(orResourcePatternResolver
) of this bean definition reader- Returns:
- the number of bean definitions found
- Throws:
BeanDefinitionStoreException
- in case of loading or parsing errors- See Also:
-
loadBeanDefinitions
Load bean definitions from the specified resource locations.- Parameters:
locations
- the resource locations, to be loaded with theResourceLoader
(orResourcePatternResolver
) of this bean definition reader- Returns:
- the number of bean definitions found
- Throws:
BeanDefinitionStoreException
- in case of loading or parsing errors
-