Ich habe zwei Entitäten ...Hibernate findByExample mit nicht-primitiven Mitgliedern
Datei und Benutzer
Datei hat einen @ManyToOne Verweis auf Benutzer mit folgenden Anmerkung auf dem Mitglied:
@ManyToOne
@JoinColumn(name="user_id")
private User user
Ich versuche, alle Dateien für einen Benutzer mithilfe der Methode "findByExample" zu finden.
Ich habe eine Instanz von Datei und eine Instanz von Benutzer (mit dem Benutzernamen) erstellt. Ich habe die Instanz von Benutzer auf die Datei-Instanz hinzugefügt und gab es „findByExample“ wie folgt aus:
Criteria crit = getSession().createCriteria(File.class);
Example ex = Example.create(exampleInstance);
crit.add(ex);
return crit.list();
Leider „-Liste()“ gibt alle Dateien in meinem db, nicht nur die, die für den angegebenen Benutzer. Ich habe das generierte SQL inspiziert und sehe, dass es das User-Objekt nicht auf irgendwelche Werte hin untersucht, sondern einfach die Tabellen verbindet und ein "where (1 = 1)" tut.
Ist es möglich, dass Hibernate nicht-primitive Mitglieder bei einer "findByExample" -Abfrage nicht überprüft?