toto nepomohlo :
Criteria dateValidCriteria = session.createCriteria(ObjektA.class);
dateValidCriteria.createCriteria("loads").add(disjunction).setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
Ivan
Richard Malaschitz wrote / napísal(a):
crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
>
> Dňa 23.3.2008, Ivan Polák <[EMAIL PROTECTED]> napísal(a):
>
>> este doplnim otazku. zvladol som vnorene criteria objekty. mam
>> nasledovnu situaciu:
>>
>> prvy objekt A "ma" 3 load objekty.
>> druhy objekt A "ma" 2 load objekty.
>> treti objekt A "ma" 1 load objekt.
>>
>> a vypis je nasledovny - teda obsahuje duplicitne polozky,
pricom objekt
>> A by tam mal byt iba raz a nie 3x (nakolko obsahuje 3 load
objekty):
>>
>> prvy objektA - load1
>> prvy objektA - load2
>> prvy objektA- load3
>> prvy objektA - load1
>> prvy objektA - load2
>> prvy objektA- load3
>> prvy objektA - load1
>> prvy objektA - load2
>> prvy objektA- load3
>> druhy objektA- load1
>> druhy objektA - load2
>> druhy objektA - load1
>> druhy objektA - load2
>> treti objektA - load1
>> treti objektA - load2
>>
>> podla mna asi chyba definovanie INNER_JOIN, teda:
>> CriteriaSpecification.INNER_JOIN ?
>>
>> dakujem
>>
>> Ivan
>>
>>
>>
>> Ivan Polák wrote / napísal(a):
>>
>>
>>> dakujem, toto som v dokumentacii nejako prehliadol :-(. dakujem
>>>
>> >
>> > Ivan
>> >
>> > Josef Adamčík wrote / napísal(a):
>> >> Trik je v tom, ze se vytvori vnoreny criteria objekt. Tedy
treba:
>> >> session.createCriteria(A.class)
>> >> .(... pripadne restrikce a dalsi modifikatory pro A)
>> >> .createCriteria("loads").
>> >> . (... restrikce a modifikatory pro objekty z kolekce
"loads")
>> >>
>> >> Dalsi moznosti je pouzit .createAlias(..) Obe moznosti jsou
popsany zde:
>> >>
http://www.hibernate.org/hib_docs/reference/en/html/querycriteria.html#querycriteria-associations
>> >>
>> >>
>> >>
>> >> 2008/3/22 Ivan Polák <[EMAIL PROTECTED]>:
>> >>
>> >>> Ahojte,
>> >>>
>> >>> potreboval by som pomoct s definovanim hibernate criteria pre
>> >>> nasledovnu
>> >>> situaciu.
>> >>>
>> >>> mam objekt A, ktory ma :
>> >>>
>> >>> @OneToMany(mappedBy = "...", fetch = FetchType.LAZY,
cascade =
>> >>> CascadeType.ALL)
>> >>> @JoinColumn(name = "owner_id")
>> >>> private List<Load> loads;
>> >>>
>> >>> objekt Load ma 2 vlastnosti - platnost od a platnost do.
teda objekt A
>> >>> ma list objektov typu Load.
>> >>>
>> >>> ako mam napisat criteria pre vyhladavanie, ked vyhladavacie
>> >>> kriteria su
>> >>> datum-od, datum do, ak chcem prehladavat objekty A, ale tato
>> >>> podmienka s
>> >>> datumami sa vztahuje na objekty loads, teda aby sa pozrelo
postupne na
>> >>> vsetky objekty A co mam v DB a pre kazdy objekt sa pozrelo
na vsetky
>> >>> objekty loads typu Load, ktore k nemu patria, a vypisalo
len take
>> >>> objekty A, ktory ma aspon jeden objekt v loads, ktory
splna podmienku.
>> >>> neide mi o to, ako napisat criteria pre datumovu
podmienku, ide mi
>> >>> o to,
>> >>> ako prehladavat nejake pole objektov patriace k "hlavnym"
objektom
>> >>> ktore
>> >>> prehladavam. dufam ze som to aspon trocha zrozumitelne
popisal.
>> >>>
>> >>> velmi pekne dakujem
>> >>>
>> >>> Ivan
>> >>>
>> >>>
>> >>
>> >>
>> >>
>> >
>> >
>> >
>>
>>
>>