Estou utilizando o Spring em uma aplicação que necessita acessar mais de um banco de dados.
Encontrei um material e posts aqui no Guj mesmo, e consegui implementar, segue a dúvida …
Como escolho um determinado Datasource na minha classe de serviço ???
por ex: tenho configurado um banco Oracle e outro Mysql, quando tento acessar uma parte da aplicação, que usa o banco Mysql … ele esta direcionado para o banco Oracle, causado assim um ORA-942 Table or view does not exists =/
Tenho 1 arquivo chamado dataSource.xml que possue 2 beans um chamado “postgre” e outro “mysql”, que sao os dataSources.
Voce pode ter 2 classes DAO uma para postgres e outra para mysql que recebem por injecao de dependencia seus respectivos datasources.
Dai so utilizar qual vc quiser. Ex. daoPg.pesquisa, ou daoSql.pesquisa.
Outra forma eh vc ter uma classe DAO que tenha um metodo setDataSource dai vc seta o datasource que vc quer utilizar, ou pode ter um construtor exigindo um datasource.
Tenho 1 arquivo chamado dataSource.xml que possue 2 beans um chamado “postgre” e outro “mysql”, que sao os dataSources.
Voce pode ter 2 classes DAO uma para postgres e outra para mysql que recebem por injecao de dependencia seus respectivos datasources.
Dai so utilizar qual vc quiser. Ex. daoPg.pesquisa, ou daoSql.pesquisa.
Outra forma eh vc ter uma classe DAO que tenha um metodo setDataSource dai vc seta o datasource que vc quer utilizar, ou pode ter um construtor exigindo um datasource.[/quote]
Fala Vdb, obrigado pela resposta…
Fiz seguindo isso, se puder dar uma olhada!!
Veja se é parecido com o que vc faz…
Tenho uma classe que extend HibernateDaoSupport, assim eu ja tenho os metodos save, update, e todos os outros para pesquisas.
Caso vc va utilizar jdbc, extend JdbcTemplate.
Tenho uma classe que extend HibernateDaoSupport, assim eu ja tenho os metodos save, update, e todos os outros para pesquisas.
Caso vc va utilizar jdbc, extend JdbcTemplate.[/quote]
Da forma que vc faz, voce cria uma <bean … org.springframework.orm.hibernate.LocalSessionFactoryBean> e injeta ele em uma classe que extends HibernateDaoSupport ???