kyuri
#1
Olá!
Estou tentando pesquisar no hibernate o seguinte caso:
Lancamento tem como fk a subcategoria
Subcategoria tem com fk a Categoria
E quero pesquisar por Lancamento q tiver Categoria = x
tentei assim mas nao rolou:
Criteria sql = session.createCriteria(Lancamentos.class, “l”);
sql.add(Restrictions.eq(“l.subcategoria.categoria.id”, 1L));
sql.list();
Usei Expression tb e deu o mesmo resultado… (se uso apenas “l.subcategoria.id” funciona normal)
beleza cara tenta isto aí
Criteria crit = sessao.createCriteria(Classe1.class);
crit.createCriteria(“nomeDaClassePorString”).add(Restriction.eq(“campo”,valor)
kyuri
#3
Ae, consegui!
Um colega meu achou a barbada!
session.createCriteria(Lancamentos.class, “l”)
.createAlias(“l.subcategoria”, “s”)
.createAlias(“s.categoria”, “c”)
.add(Restrictions.eqProperty(“s.id”, “l.subcategoria.id”))
.add(Restrictions.eqProperty(“c.id”, “s.categoria.id”))
.add(Restrictions.eq(“c.id”, 1L))
.list();