Class BeanFactoryDataSourceLookup
- java.lang.Object
- org.springframework.jdbc.datasource.lookup.BeanFactoryDataSourceLookup
- All Implemented Interfaces:
Aware
,BeanFactoryAware
,DataSourceLookup
public class BeanFactoryDataSourceLookup extends Object implements DataSourceLookup, BeanFactoryAware
DataSourceLookup
implementation based on a SpringBeanFactory
.Will lookup Spring managed beans identified by bean name, expecting them to be of type
javax.sql.DataSource
.- Since:
- 2.0
- Author:
- Costin Leau, Juergen Hoeller
- See Also:
BeanFactory
Constructor Summary
Constructors Constructor Description BeanFactoryDataSourceLookup()
Create a new instance of theBeanFactoryDataSourceLookup
class.BeanFactoryDataSourceLookup(BeanFactory beanFactory)
Create a new instance of theBeanFactoryDataSourceLookup
class.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DataSource
getDataSource(String dataSourceName)
Retrieve the DataSource identified by the given name.void
setBeanFactory(BeanFactory beanFactory)
Callback that supplies the owning factory to a bean instance.
Constructor Detail
BeanFactoryDataSourceLookup
public BeanFactoryDataSourceLookup()
Create a new instance of theBeanFactoryDataSourceLookup
class.The BeanFactory to access must be set via
setBeanFactory
.
BeanFactoryDataSourceLookup
public BeanFactoryDataSourceLookup(BeanFactory beanFactory)
Create a new instance of theBeanFactoryDataSourceLookup
class.Use of this constructor is redundant if this object is being created by a Spring IoC container, as the supplied
BeanFactory
will be replaced by theBeanFactory
that creates it (c.f. theBeanFactoryAware
contract). So only use this constructor if you are using this class outside the context of a Spring IoC container.- Parameters:
beanFactory
- the bean factory to be used to lookupDataSources
Method Detail
setBeanFactory
public void setBeanFactory(BeanFactory beanFactory)
Description copied from interface:BeanFactoryAware
Callback that supplies the owning factory to a bean instance.Invoked after the population of normal bean properties but before an initialization callback such as
InitializingBean.afterPropertiesSet()
or a custom init-method.- Specified by:
setBeanFactory
in interfaceBeanFactoryAware
- Parameters:
beanFactory
- owning BeanFactory (nevernull
). The bean can immediately call methods on the factory.- See Also:
BeanInitializationException
getDataSource
public DataSource getDataSource(String dataSourceName) throws DataSourceLookupFailureException
Description copied from interface:DataSourceLookup
Retrieve the DataSource identified by the given name.- Specified by:
getDataSource
in interfaceDataSourceLookup
- Parameters:
dataSourceName
- the name of the DataSource- Returns:
- the DataSource (never
null
) - Throws:
DataSourceLookupFailureException
- if the lookup failed