Ola Pessoal.
Estou com o seguinte problema.
Tenho 3 classes (Contratos, Clientes e Faturamento ).
O mapeamento de relacionamento da classe Faturamento com Contratos
@ManyToOne(cascade = {CascadeType.ALL}, fetch = FetchType.LAZY)
@JoinColumns({
@JoinColumn (name="CONTRATO", referencedColumnName="CONTRATO", insertable=false, updatable=false),
@JoinColumn (name="FILIAL", referencedColumnName="FILIAL", insertable=false, updatable=false)
})
private Contratos contratos;`
Dentro de Contratos tenho o relacionamento com Clientes
@ManyToOne(cascade = {CascadeType.ALL}, fetch = FetchType.LAZY)
@JoinColumns({
@JoinColumn (name="CLIENTE", referencedColumnName="CLIENTE", insertable=false, updatable=false),
@JoinColumn (name="LOJA", referencedColumnName="LOJA", insertable=false, updatable=false)
})
private Clientes cliente;`
Quando vou efetuar uma consulta na class Faturamento , me deparei com o problema de varios selects (O Famoso SELECT N+1).
Criteria select = session.createCriteria(Contratos.class);
select.setFetchMode("cliente", FetchMode.JOIN);
contratos = select.list();`
Tentei efetuar a consulta utilizando setFetchMode.JOIN, porem não ouve nenhuma mudança.
O que mais posso estar vacilando?
No aguardo de uma ajuda