HSQLDB Hibernate Criteria Problem

Otz

Bekanntes Mitglied
Hallo zusammen,

ich versuche mich gerade am Erstellen einer kleiner Anwendung mit angebundener Datenbank.
Hierzu habe ich folgende zwei Klassen:

Code:
public class A{
@Column
private String bla;
@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.LAZY)
private Set<B> references;
....
}

public class B{
@Column
private String blub;
....}

Jetzt möchte ich mittels Restrictions alle Objekte der Klasse B erhalten, bei denen in Klasse A, der String bla, den Wert "x" hat sowie in Klasse B, der String blub, den Wert 'y' hat.

Kann mir hierzu jemand einen Tipp geben?

Aktuell hole ich mir mittels Restrictions alle Objekte der Klasse A, bei denen der String bla den Wert 'x' hat als Liste. Diese durchlaufe ich anschließend und überprüfe mittels If-Anweisung ob die Bedingung blub.equal("x") gegeben ist. Dies muss doch aber auch irgendwie mittels Restrictions bzw. Criteria funktionieren oder?

Viele Dank
 
Wieso machst du's nicht ganz straight forward mit JPQL?

Code:
SELECT b from A a LEFT JOIN a.references b WHERE ....
 
Was ist daran denn kompliziert? SQL wirst du sicherlich beherrschen ... und der Schritt von SQL zu JPQL ist (für die Grundlagen) zunächst einmal nur eine klein wenig abgewandelte Syntax, die aber SQL doch recht ähnlich ist.
Eine Einarbeitung in die Criteria API ist da sicherlich deutlich schwieriger. Das würde ich ohnehin nur in Erwägung ziehen, wenn du wirklich dynamisch Querys aufbauen willst.

Dein "geht bestimmt auch" hört sich zudem nach Zweifeln an, ob es denn wirklich funktioniert. Da kann ich dir vergewissern, dass dem so ist. Solche Queries hab ich schon zu Hauf geschrieben...
 

Neue Themen


Zurück
Oben