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