1
resposta

Duvida em relação ao mapeamento do relacionamento.

Opa pessoal, me surgiu aqui uma dúvida, na classe movimentação eu poderia ter no lugar de um atributo do tipo Conta um do tipo int para representar o id da conta? isso iria poupar uma busca de dados na tabela Conta toda vez que eu fosse pegar uma movimentação? Porém acredito que enfraqueceria a parte de orientação a objetos ( me corrijam se eu estiver errado). Gostaria de saber qual se o método que eu informei é válido e qual é a abordagem utilizada no mercado hoje em dia.

1 resposta

Oi William, tudo bem?

Quando houver essa necessidade de não trazer a entidade conta quando buscar pelas movimentações, o mais correto é utilizar o LAZY load:

@ManyToOne(fetch = FetchType.LAZY)

O FetchType.LAZY diz ao Hibernate para buscar apenas as entidades relacionadas do banco de dados quando você usa o relacionamento. Dessa forma quando você trouxer do banco de dados a entidade movimentacao, o Hibernete não trará a entidade Conta, a menos que você tente acessa-lá explicitamente.