Usando o join fetch na consulta, se faz necessário a utilização da instrução fetch = FetchType.EAGER no mapeamento ?
Usando o join fetch na consulta, se faz necessário a utilização da instrução fetch = FetchType.EAGER no mapeamento ?
Olá Márcio, tudo bem? Depende, no caso desse projeto do curso sim, em outro casos talvez não ou talvez seja melhor usar o Lazy:
fetch = FetchType.LAZY
Isso porque, você está apenas fazendo uma consulta no banco de dados e quer que os relacionamentos ou seja todos os registros relacionados em outras tabelas venham juntos, porém quando formos fazer uma busca simples, ou utilizando frameworks como o Spring Boot, ele não fazer saber qual é a ação correta, já que o EAGER trás todos os relacionamentos e o LAZY não e isso pode gerar alguns problemas. Em aplicações de grande por te e de grande volume é mais interessante não trazer todos os dados porque isso pode gerar problemas de desempenho na aplicação. No caso do curso é indicado deixar o fetch = FetchType.EAGER
no mapeamento.
Espero ter esclarecido sua dúvida!