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







Odpovedet emailem