Ich habe die Anforderung, ausgewählte Zeilen aus der Oracle-Datenbank basierend auf ids
, die als Array bereitgestellt wurden, abzurufen, ähnlich wie die Abfrage SELECT ... FROM table_name WHERE id IN()
.
Bei meinen Versuchen versuche ich, org.hibernate.setParameterList(String name, Object[] values)
Methode in meinem DAO wie folgt.
Der Parameter vom Typ String[]
in der angegebenen Methode wird von der jeweiligen Spring-Controller-Klasse geliefert.
Es verursacht die folgende Ausnahme ausgelöst.
org.hibernate.hql.ast.QuerySyntaxException: unerwartetes Token:, near Zeile 1, Spalte 78 [prodImageId, prodImage auswählen aus model.ProductImage wobei prodImageId =: id0_,: id1_,: id2_,: id3_, : id4_,: id5 _]
Wie können die ausgewählten Zeilen basierend auf der Liste von ids
mit Hibernate abgerufen werden?
Angenommen, accountFilter
ist ein Objekt List
. Beachten Sie, dass Sie keine leeren Listen übergeben sollten, da dies zu folgendem SQL führen würde (was nicht funktionieren wird): ... WHERE xyz IN () ...
(beachten Sie die leere In-Klausel).