# Hibernate Criteria frage



## Mican (24. Jan 2007)

Hi Leute,

Ich suche mit hibernate Criteria bestimmte kunden. Ich schaffe es auch attribute in seinen "childs" zu suchen. Doch würde ich gerne wissen ob es geht auch in den childs der childs zu suchen. 

Habe folgende DB Struktur
Ein "Kunde" hat mehrere "Bestellungen" und die Bestellung hat mehrere "Artikel"

Folgende suche funktioniert:



```
Criteria cr= getSession().createCriteria(Kunde.class)
	         .createAlias("bestellungen", "bestellung",JoinFragment.LEFT_OUTER_JOIN)
	         .add(Restrictions.like("bestellung.preis", doublepreis));
	         .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY)
	         .list();
```


Nun will ich zb nach "artikelname" in artikel suchen und alle kunden ausgeben die diese artikel bestellt haben. 

danke im voraus[/code]


----------



## Mican (24. Jan 2007)

Ok habs glaub ich gelöst (hibernate ist geil!)... wers braucht siehe foldend:



```
Criteria cr= getSession().createCriteria(Kunde.class)
            .createAlias("bestellungen", "bestellung",JoinFragment.LEFT_OUTER_JOIN)
            .createAlies("bestellungen.artikels","artikel",JoinFragment.LEFT_OUTER_JOIN)
            .add(Restrictions.like("bestellung.preis", doublepreis))
            .add(Restrictions.like("artikel.bezeichnung",artikelbezeichnung)
            .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY)
            .list();
```


----------



## KSG9|sebastian (24. Jan 2007)

könntest auch über nen HQL-Query machen..


----------

