Ich benutze Spring Data Rest JPA, die die Abfrage intern auf der Grundlage von Methodenname implementiert.jpa Abfrage mit optionalen Parametern
Ich schrieb die folgende Methode in meine Repository-Schnittstelle, die alle Benutzer in einem Zustand auflisten sollte und wenn der Name und/oder das Alter vorhanden ist, sollte es das Ergebnis filtern.
StateID ist obligatorisch, aber Name und Alter sind optional Filterparameter
public List<User> findByStateIdAndNameOrAge(Integer stateId, String name , Integer age, Pageable pageable);
ich keine Ergebnisse bekommen werde. Wo mache ich falsch?
@KrishnaKuntala aber Frühling Daten-Jpa wird out-of-the-Box-rechts implementieren – zilcuanu
Ich denke, Ihre Abfrage wird wahrscheinlich interpretiert als: (StateId Und Name) ODER Alter, was nicht das ist, was Sie wollen. Ihre beste Wahl wäre, Kriterien api zu verwenden oder eine dynamische Abfrage zu erstellen, wenn sich Ihre Abfrage zur Laufzeit der optionalen Parameter ändert. –
Mögliches Duplikat von [JPA Query zur Behandlung des NULL-Parameterwerts] (https://stackoverflow.com/questions/28554798/jpa-query-to-handle-null-parameter-value) –