In meinem Projekt verwende ich JPA 2.0 mit Eclipselink-Implementierung, und ich habe folgendes Problem:
Ich habe Entity mit boolescher Spalte definiert:
%Vor%Ich möchte eine Abfrage erstellen, die alle aktiven Benutzer zurückgibt, etwa so:
Wählen Sie u aus Benutzer u, wo u.active = TRUE;
Aber wenn ich diese Abfrage verwende, habe ich eine Ausnahme, dass boolean nicht in Short umgewandelt werden kann (die Spalte in der Datenbank wird als smallint gespeichert). Gibt es eine korrekte Möglichkeit, diese Abfrage zu schreiben?
Danke
Verwenden Sie das folgende Formular:
SELECT e FROM Employee e WHERE e.active = TRUE
Weitere Informationen finden Sie in den Dokumenten .
Sie können eine Abfrage schreiben wie:
@Query ("WÄHLEN Sie u von Benutzer u-Reihenfolge durch u.active");
Es werden zuerst inaktive Benutzer angezeigt. Wenn Sie den aktiven Benutzer zuerst sehen möchten, wie:
@Query ("WÄHLEN Sie u aus dem Benutzer ordnet durch u.active desc");
in der obigen Abfrage, wie TRUE / FALSE als Benutzerparameter übergeben? Wenn ich es unten versuche, gibt es nicht die Werte wie bei der Benutzereingabe zurück (TRUE / FALSE).
Hier ist die benannte Abfrage
%Vor%hier rufe ich die obige Namensabfrage
auf %Vor%Tags und Links jpa-2.0 eclipselink jpql