Boa Noite, queria saber se alguém ja passou por dificuldade com o lazy do hibernate. Onde tenho a entidade Declaração e tenho 2 atributos de pessoa (declarante e declarada) e mudei o mapeado para ser lazy conforme abaixo.
@Entity
@Table(name = "TB_DECLARACAO")
public class Declaracao{
//Demais Atributos omitidos
@ManyToOne(fetch = FetchType.LAZY,optional = false)
@JoinColumn(name = "ID_PESSOA_DECLARANTE", referencedColumnName = "ID_PESSOA")
private Pessoa pessoaDeclarante;
@ManyToOne(fetch = FetchType.LAZY,optional = false)
@JoinColumn(name = "ID_PESSOA_DECLARADA", referencedColumnName = "ID_PESSOA")
private Pessoa pessoaDeclarada;
}
Só que quando faço o JPQL abaixo o hibernate(propriedade show_queries habilitada) gera a consulta para trazer a pessoa declarante e a declarada é isso me deixou confuso pois se os atributos são lazy as querys para trazer as pessoas não deveriam ser executadas apenas quando executasse no meu codigo o getPessoaDeclarada() e o getPessoaDeclarante()?
SELECT d FROM Declaracao d where d.id in (:ids)
Informação adicionar nesse projeto que trabalho as entidades são em um projeto separado. e fiz o rebuild e alterei a versão no pom do projeto (que tem as regras de negocio) para referenciar a versão mais recente do projeto com as entidades mas mesmo assim não surte efeito... alguém consegue ajudar?