Dúvida - Lazy Load por padrão no hibernate?

2 respostas
programaçãojavahibernate
R

Eu fiz minha API Rest em uma das requisições de teste apareceu o seguinte erro:

No serializer found for class org.hibernate.proxy.pojo.javassist.Javassist.

Googleei e vi que a anotação:

@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})

resolveria minha situação. Mas até outro dia eu estava fazendo essa mesma API e não dava esse problema. A pergunta é: o hibernate sempre liga esse Lazy Load por padrão?

2 Respostas

J

Sim, e depende de como está seu mapeamento. O ideal é usar HQL com fetch join, para gerar um único SQL com o resultado final de forma eficiente. Acessar propriedade Lazy não é apropriado para requisições web. Deixa mapeado como Lazy mas gere as querys com HQL aplicando fetch nos joins.

M

Utilize EAGER.

Criado 13 de julho de 2018
Ultima resposta 14 de jul. de 2018
Respostas 2
Participantes 3