Olá, sou novato no hibernate e estou com um problema de otimização em uma consulta.
O problema é o seguinte: tenho um relacionamento Mestre -< Detalhe que é usado em várias partes do programa. Mas possuo também uma tela que lista apenas a tabela Mestre. Acontece que o hibernate carrega todos os detalhes para cada registro mestre e isso deixa a tela muito lenta devido ao grande número de registros exibidos nesta lista.
Posso usar o mesmo mapeamento da tabela Mestre mas de alguma forma dizer pro Hibernate não carregar os detalhes?
Hibernate Mestre/Detalhe
3 Respostas
Mapeie a lista como LAZY.
Aqui você pode encontrar como consultar o valor com uma lista LAZY: JPA Consultas e Dicas.
Por default os mapeamentos com @…ToMany é to tipo lazy.
Verifique se em algum ponto apos a pesquisa, voce nao esta chamando por algum get… ou se no mapeamento voce nao deixou explicito eager.
Por default os mapeamentos com @…ToMany é to tipo lazy.Mas se ele disse que tá lento, pode ser que alterou para EAGER para solucionar LazyInitializationException. E pode ser também por fazer LOAD de arquivos de fotos mapeados dentro das classes.Verifique se em algum ponto apos a pesquisa, voce nao esta chamando por algum get… ou se no mapeamento voce nao deixou explicito eager.
Criado 16 de outubro de 2012
Ultima resposta 16 de out. de 2012
Respostas 3
Participantes 3