Eu preciso fazer um select na tabela de relacionamento (GrupoUF) para trazer todos registros que tenha uma determinada UF
como fazer isso usando criteria?
Criteria c = session.createCriteria(Grupo.class);
c.createAlias("ufs", "uf");
c.add(Restrictions.eq("uf.id", ufId)); // aqui você passa o ID da uf que você quer
List<Grupo> grupos = c.list();Testa ae e vê se resolve. Flw! :thumbup:
cezbatistao
fala ae cara,
eu dei uma olhada no q vc mandou, e tentei fazer algo nas cegas…
acho q vc vai ter q mudar algumas coisas, se não tudo
kkkkkkkk
mas da uma olhada no q eu fiz…
DetachedCriteriadetachedCriteria=DetachedCriteria.forClass(GrupoUF.class);detachedCriteria.setProjection(Projections.property("idGrupo")); // TODO nao sei o nome da propriedade da classe de relacionamento para o grupo na classe GrupoUFdetachedCriteria.createAlias("ufs","uf");detachedCriteria.add(Restrictions.eq("uf.codigo","SP")); // se o codigo for a proprio estado, tipo SP msm, nao precisa criar o alias e usar o codigo direto na classe de relacionamento GrupoUFCriteriacriteria=session.createCriteria(GrupoDistribuicao.class);criteria.add(Subqueries.propertyEq("idGrupo",detachedCriteria)); // TODO nao sei o nome da propriedade do id do grupo na classe GrupoDistribuicaoList<GrupoDistribuicao> lista = (List<GrupoDistribuicao>)criteria.list();