1

Boa Tarde terráqueos,

Sou iniciante em java e estou com a seguinte situação. Tenho dois bancos de dados, onde eu vou transferir os registro de um banco para o outro. Existe a possibilidade de fazer uma classe de Entidade ser mapeada pelos dois bancos?

Observações:

  • A aplicação esta utilizando o EntityManagerFactory e da mesma eu instancio um EntityManger.
2
  • Sua pergunta é muito ampla. Bom, acho que a resposta para este problema está neste estudo: blog.caelum.com.br/… Commented 26/08/2016 às 12:01
  • Vlw @Marcos. Vou ler o artigo Commented 26/08/2016 às 12:13

1 Resposta 1

2

Tem sim. Em JPA você usa unidades de persistência, que representam bancos específicos. Se você quiser especificar mais de um banco é só declarar mais de uma unidade de persistência (PU) e criar os entity managers para cada uma delas. O arquivo persistence.xml que declara as PUs ficaria assim:

<persistence-unit name="pu1">
<properties>
        <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost/banco1" />
        <property name="javax.persistence.jdbc.user" value="admin" />
        <property name="javax.persistence.jdbc.password" value="123456" />

<persistence-unit name="pu2">
<properties>
        <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost/banco2" />
        <property name="javax.persistence.jdbc.user" value="admin" />
        <property name="javax.persistence.jdbc.password" value="123456" />

Aí para referenciar uma entidade que está no banco 1 você só precisa instanciar a pu1 na criação do entity manager:

EntityManager emPU1 = Persistence.createEntityManagerFactory("pu1").createEntityManager();

Já para a entidade que está no banco 2 é só referenciar a pu2:

EntityManager emPU2 = Persistence.createEntityManagerFactory("pu2").createEntityManager();

Depois de consultar ambas as entidades, você pode fazer o seu DE-PARA e persistir como desejar o resultado final. Espero ter ajudado ^^

5
  • Então, eu fiz dessa forma antes de posta a pergunta, porém, eu achei que estava fazendo da forma errado. Mas vi que estou no caminho certo... Commented 1/09/2016 às 12:36
  • É assim mesmo quando se usa JPA :) Commented 1/09/2016 às 13:06
  • Querendo aproveita o post para fazer uma pergunta básica para você, mas dfícil para mim rsrs. Então, você poderia me tirar uma dúvida em relação a como criar xml + beans no Spring ? Commented 1/09/2016 às 18:20
  • Posso sim, faz a pergunta que eu respondo lá! Commented 1/09/2016 às 18:50
  • pt.stackoverflow.com/questions/150518/… Commented 1/09/2016 às 19:21

Você deve fazer log-in para responder a esta pergunta.

Esta não é a resposta que você está procurando? Pesquise outras perguntas com a tag .