Problemas com Hibernate - createCriteria

2 respostas
kyuri

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(“<a href="http://l.subcategoria.categoria.id">l.subcategoria.categoria.id</a>”, 1L));

sql.list();

Usei Expression tb e deu o mesmo resultado… (se uso apenas “l.subcategoria.id” funciona normal)

2 Respostas

R

beleza cara tenta isto aí

Criteria crit = sessao.createCriteria(Classe1.class);
crit.createCriteria(“nomeDaClassePorString”).add(Restriction.eq(“campo”,valor)

kyuri

Ae, consegui!

Um colega meu achou a barbada! :smiley:

session.createCriteria(Lancamentos.class, “l”)

.createAlias(“l.subcategoria”, “s”)

.createAlias(“s.categoria”, “c”)

.add(Restrictions.eqProperty(“<a href="http://s.id">s.id</a>”, <a href="http://l.subcategoria.id">l.subcategoria.id</a>”))

.add(Restrictions.eqProperty(“<a href="http://c.id">c.id</a>”, <a href="http://s.categoria.id">s.categoria.id</a>”))

.add(Restrictions.eq(“<a href="http://c.id">c.id</a>”, 1L))

.list();
Criado 23 de setembro de 2008
Ultima resposta 23 de set. de 2008
Respostas 2
Participantes 2