Usar dois bancos com JPA
Olá a todos, novamente aqui para contar com a experiencia de vocês no meu projeto:
Tenho o seguinte cenário, meu sistema ERP funciona com contas para meus clientes, de maneira que ao acessar o sistema, eu conecto no meu banco e vejo como esta a conta do cliente, para liberar o acesso.
Caso esteja tudo ok, eu conecto no banco do cliente e libero o acesso pra ele trabalhar.
Pesquisando pela net, encontrei uma solução, porem como meu sistema é um ERP, tenho que sempre usar as melhores soluções para não ter problemas com desempenho.
Por favor veja o código abaixo e me digam se está solução é limpa ou não.
No caso vou passar a variável nomeBanco via parâmetro, caso a solução seja esta.
Desde já obrigado pela atenção.
Tenho o seguinte cenário, meu sistema ERP funciona com contas para meus clientes, de maneira que ao acessar o sistema, eu conecto no meu banco e vejo como esta a conta do cliente, para liberar o acesso.
Caso esteja tudo ok, eu conecto no banco do cliente e libero o acesso pra ele trabalhar.
Pesquisando pela net, encontrei uma solução, porem como meu sistema é um ERP, tenho que sempre usar as melhores soluções para não ter problemas com desempenho.
Por favor veja o código abaixo e me digam se está solução é limpa ou não.
No caso vou passar a variável nomeBanco via parâmetro, caso a solução seja esta.
Desde já obrigado pela atenção.
private Properties prop;
private String nomeBanco = jdbc:postgresql://127.0.0.1:5432/commit;
//
private JPAUtil(){
prop = new Properties();
prop.put(javax.persistence.jdbc.url, this.nomeBanco);
prop.put(javax.persistence.jdbc.password, 9);
prop.put(javax.persistence.jdbc.user, postgres);
factory = Persistence.createEntityManagerFactory(commit, prop);
}
Fernando Silva
Curtidas 0
Respostas
Davi Costa
25/07/2012
É funcional sim.
Mas pesquisa também a possibilidade de usar dois persistence.xml, caso use hibernate.
Más é com certeza uma solução limpa, sugiro também que crie interfaces para fazer isso.
E cada implementação corresponderá a um banco.
Mas vc pode pensar, mas Davi uso JPA, basta passar as configurações do banco como parâmetro. Porém mesmo com pouca experiência percebemos que tem sempre um detalhe de um banco para outro. Já passar por situações até com mesmo banco e versões diferentes e tive que fazer alguns tratamentos. Criando interfaces vc já vai estar pronto caso haja alguma necessidade.
Espero ter ajudado
att Davi
Mas pesquisa também a possibilidade de usar dois persistence.xml, caso use hibernate.
Más é com certeza uma solução limpa, sugiro também que crie interfaces para fazer isso.
E cada implementação corresponderá a um banco.
Mas vc pode pensar, mas Davi uso JPA, basta passar as configurações do banco como parâmetro. Porém mesmo com pouca experiência percebemos que tem sempre um detalhe de um banco para outro. Já passar por situações até com mesmo banco e versões diferentes e tive que fazer alguns tratamentos. Criando interfaces vc já vai estar pronto caso haja alguma necessidade.
Espero ter ajudado
att Davi
GOSTEI 0
Fernando Silva
25/07/2012
Obrigado pela ajuda, vou tentar fazer com interfaces como sugeriu pra ver como fica.
GOSTEI 0