| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/06/2008 08:42:20
|
mvurban
Thread.start()
![[Avatar]](/images/avatar/6a8c083c3f7029f6c4d81d0c22a5f106.jpg)
Membro desde: 14/04/2008 08:54:37
Mensagens: 25
Offline
|
Olá pessoal,
Estou iniciando no hibernate, na verdade é nhibernate pois minha plataforma é .net.
Estou começando um projeto de medio porte, onde tenho um bom tempo para concluílo, decidi que vou utlizar nhibernate pra aprender e porque o projeto se encaixa bem na estrutura orientação a objetos.
Agora um requisito importante neste projeto é que vou precisar trabalhar com mais de um database ao mesmo tempo. Tipo 2 bases sql e uma Oracle. Em certas situações vou precisar ler de um banco, aplicar regras de negócio e então persistir no outro.
Gostaria de saber se o hibernate suporta este tipo de requisito e como faço pra configurar isso.
Obrigado a todos.
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/06/2008 09:10:21
|
Rubem Azenha
GUJ Master
![[Avatar]](/images/avatar/cb953f6ca5923f7517125db46ed1293d.jpg)
Membro desde: 28/06/2004 00:10:43
Mensagens: 1933
Localização: São Paulo, SP
Offline
|
Cara, uma vez eu vi uma palestra dum cara da Red Hat, ele disse que tem um projeto que faz isso. Eu não lembro o nome, não sei se está estável, não se está disponível, não lembro se era só um roadmap e muito menos se é só para a versão Java do Hibernate (o que eu suspeito).
|
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/06/2008 09:27:04
|
asaudate
GUJ Master
![[Avatar]](/images/avatar/974e2945a18e0bfb8e3aa8becac3e65c.jpg)
Membro desde: 01/09/2007 19:31:41
Mensagens: 1794
Localização: São Paulo
Offline
|
Cara... em Java, funciona , como implementação da JPA. Agora, em .NET, as coisas mudam de figura. Não tenho muita certeza, mas acredito que, por ser uma implementação de JPA e JPA suportar mais de um banco, então o Hibernate (nhibernate) funciona com vários, sim.
Não sei como funciona o NHibernate, mas acredito que, pra isso, você tenha que criar objetos Session distintos, cada um com uma Configuration diferente.
Avisa se funcionar.
|
Alexandre Saudate
__________________________
Do not try to bend the spoon - that's impossible. Instead, only try to realize the truth: there is no spoon.
Série quickstart: Spring+Spring Security+Jersey (REST) +Hibernate (JPA) -> https://github.com/alesaudate/kickstart-springjerseyhibernate
Evite usar Axis2!!! Leia aqui para mais detalhes!
@alesaudate
Quer ler um blog especializado em web services e SOA?
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/06/2008 09:28:25
|
LeoMarola
JavaGuru
![[Avatar]](/images/avatar/e896db75d35788e14104e4eb490e725b.jpg)
Membro desde: 17/07/2006 10:35:11
Mensagens: 201
Localização: Rio de Janeiro
Offline
|
Olá
No Hibernate você cria SessionFactories. Cada SessionFactory tá ligada a um Banco. Basta que vc cria 2.. N SF's.
Para abstrair essa criação você poderia consultar o Padrão Factory.
Ah, este Link pode te dar uma luz.
|
@Test
SCJP 5
SCWCD 5
SCBCD 5
SCEA 5 (Starting..)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/06/2008 14:02:02
|
reinaldob
JavaChild
Membro desde: 14/04/2003 23:16:35
Mensagens: 102
Localização: São Paulo, Brasil
Offline
|
Veja se não é esse projeto que o Rubem comentou...
http://www.hibernate.org/414.html
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/06/2008 16:30:29
|
mvurban
Thread.start()
![[Avatar]](/images/avatar/6a8c083c3f7029f6c4d81d0c22a5f106.jpg)
Membro desde: 14/04/2008 08:54:37
Mensagens: 25
Offline
|
Valeu pessoal.
LeoMarola é exatamente esse o problema, já entendi o mecanismo e fiz o factory, pra decidir qual o banco que eu quero usar. Vlw.
Neste caso eu teria então n sessions (uso o padrão singleton aqui tb) diferentes, 1 para cada banco que eu precisar usar, correto?
Uma outra dúvida, agora relacionada a performance. Eu preciso listar uma tabela de categorias, esta tabela terá milhares de registros, então vou fazer uma paginação. Ja vi que o hibernate tem métodos para cuidar disso que são o SetMaxResults e o SetFirstResult, minha dúvida é se só fazendo isso ele já entende que eu quero 20 de cada vez e vai no banco e só traz os 20, ou ele traz tudo e depois seleciona 20? Preciso configurar alguma outra coisa?
vlw.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/06/2008 21:01:51
|
Grinvon
GUJ Master
![[Avatar]](/images/avatar/aff0a6a4521232970b2c1cf539ad0a19.png)
Membro desde: 18/08/2003 22:10:49
Mensagens: 1899
Localização: Em qualquer lugar
Offline
|
Uma dúvida! Esse SessionFactory é do hibernate ou do JPA?
|
>> Inocêncio. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/06/2008 02:20:23
|
Paulo Silveira
Administrador
![[Avatar]](/images/avatar/a87ff679a2f3e71d9181a67b7542122c.jpg)
Membro desde: 07/08/2002 18:38:50
Mensagens: 4204
Localização: São Paulo
Offline
|
SessionFactory é hibernate. EntityManagerFactory é JPA.
O shards serve pra outra coisa. So pra poder usar bancos diferentes ao mesmo tempo basta configurar varias factories no seu hibernate.cfg.xml (ou no persistence.xml, pois jpa tambem oferece esse recurso)
|
http://blog.caelum.com.br twitter: @paulo_caelum
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/06/2008 09:11:55
|
joellobo
Thread.start()
![[Avatar]](/images/avatar/7c3a966d88a80726a95c2e16e56c3997.jpg)
Membro desde: 27/08/2007 14:45:01
Mensagens: 33
Localização: Fortaleza/CE
Offline
|
outra coisa = banco de dados distribuídos
|
Joel Lobo
blogdojoellobo.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/06/2008 09:48:25
|
peerless
GUJ Master
![[Avatar]](/images/avatar/5b2a8f2b014bb326fd82ee313704e78c.jpg)
Membro desde: 22/01/2007 14:52:26
Mensagens: 1391
Localização: Porto Alegre / RS
Offline
|
Paulo Silveira wrote:SessionFactory é hibernate. EntityManagerFactory é JPA.
O shards serve pra outra coisa. So pra poder usar bancos diferentes ao mesmo tempo basta configurar varias factories no seu hibernate.cfg.xml (ou no persistence.xml, pois jpa tambem oferece esse recurso)
adicionar as propriedades em runtime para os casos que mudam não seria mais interessante?
|
follow me
pitacos
"The most problems that teams face are about communication, and all the others are too." - Dan North
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2008 19:04:45
|
Sefo
JavaChild
![[Avatar]](/images/avatar/359499f804ea7988921bf86c9377fb95.jpg)
Membro desde: 18/08/2006 10:02:28
Mensagens: 102
Offline
|
Paulo Silveira wrote:SessionFactory é hibernate. EntityManagerFactory é JPA.
O shards serve pra outra coisa. So pra poder usar bancos diferentes ao mesmo tempo basta configurar varias factories no seu hibernate.cfg.xml (ou no persistence.xml, pois jpa tambem oferece esse recurso)
Paulo, me tire uma dúvida a respeito desse assunto. Vc disse que EntityManagerFactory é JPA, não Hibernate, mas procurando aqui em casa, descobri um artigo da Mundo Java nro 17 entitulado "Fast Hibernate 3" e é usado um EntityManagerFactory no exemplo principal.
|
NY GIANTS!!!!
WAR BIG BLUES!!!!
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2008 00:25:11
|
hugosantos
Entusiasta Java
Membro desde: 11/08/2008 23:35:53
Mensagens: 18
Localização: São Paulo
Offline
|
Alguém poderia postar um exemplo de como isso (multiplas session's) no xml e a referência disso no código ?
|
Hugo Santos |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2008 08:37:18
|
ozix
JavaEvangelist
Membro desde: 25/05/2006 18:00:15
Mensagens: 326
Localização: Porto Velho
Offline
|
Paulo Silveira wrote:SessionFactory é hibernate. EntityManagerFactory é JPA.
O shards serve pra outra coisa. So pra poder usar bancos diferentes ao mesmo tempo basta configurar varias factories no seu hibernate.cfg.xml (ou no persistence.xml, pois jpa tambem oferece esse recurso)
Certo. O problema é precisar de uma mesma transação pra persistir em mais de um banco. Não dá pra dá rollback nesse caso, ou dá?
|
O céu é azul porque a matrix roda em Windows |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2008 08:37:47
|
Grinvon
GUJ Master
![[Avatar]](/images/avatar/aff0a6a4521232970b2c1cf539ad0a19.png)
Membro desde: 18/08/2003 22:10:49
Mensagens: 1899
Localização: Em qualquer lugar
Offline
|
Em minha aplicação eu chego a utilizar até dois bancos ao mesmo tempo, mas apenas quando irei fazer sincronia de dados entre eles.
No caso não utilizei nenhum SessionFactory de emf, apenas criei duas instâncias controláveis diferentes para cada banco.
|
>> Inocêncio. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2008 16:26:16
|
ranieripieper
Smalltalk
Membro desde: 12/03/2008 10:17:18
Mensagens: 3
Offline
|
Gostaria de saber o seguinte:
Tenho uma aplicação que N clientes irão utilizar. Cada cliente tem seu banco de dados. Na aplicação por um parâmetro eu sei que ele está acessando o cliente X ou Y. Como eu faço esta sessão do usuário utlizar o banco de dados X ou Y ?
E posso ter problemas tendo várias conexões para a mesma aplicação?
|
|
|
 |
|
|