11.07.2015 Views

Persistência com JPA2 e Hibernate - Inpi

Persistência com JPA2 e Hibernate - Inpi

Persistência com JPA2 e Hibernate - Inpi

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

169 MAPEAMENTO COM XML1 2 . . .34 5 6 7 8 910 11 12 13 Código XML D.35: orm.xml1 Governador g = manager . find ( Governador .class , 1L);2 Estado e = g. getEstado ();Código Java D.41: Acessando um estado a partir de um governadorA figura abaixo ilustra as tabelas Estado e Governador no banco de dados, assim <strong>com</strong>o as joincolumns correspondentes aos relacionamentos.Figura D.13: Tabelas Estado e Governador no banco de dadosNote que foram criadas duas colunas de relacionamentos. A primeira na tabela Estado <strong>com</strong> onome governador_id e a segunda na tabela Governador <strong>com</strong> o nome estado_id. Nesse caso, oprovedor JPA está considerando dois relacionamentos unidirecionais distintos entre essas entidades.No entanto, de acordo <strong>com</strong> o modelo relacional, a relação entre estados e governadores deveriaser expressa <strong>com</strong> apenas uma coluna de relacionamento. Ou seja, o relacionamento entre governadorese estados deveria ser bidirecional. Assim, devemos indicar em uma das classes que esserelacionamento bidirecional é a junção de dois relacionamentos unidirecionais. Para isso, devemosusar o atributo mapped-by da tag em uma das entidades. O valor do mapped-by deveser o nome do atributo que expressa o mesmo relacionamento na outra entidade.1 2 . . .34 5 6 7 8 910 11 12 13 Código XML D.36: orm.xmlwww.k19.<strong>com</strong>.br 169

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!