Spring Data - Multi-Spalte sucht

Bin ich mit Spring-Data für das paging und das Sortieren. Allerdings würde ich gerne durchführen multi-Spalten sucht.

Nun, ich bin mit der annotation @Abfrage in meinem repository interface wie dieses:

public interface MyRepository extends PagingAndSortingRepository<Item,Long> {

    @Query(value="select mt from MY_TABLE mt where mt.field1 = %searchtext% or mt.field2 = %searchtext% or mt.field3 = %searchtext%")    
    Page<Item> findByAllColumns(@Param("searchtext") String searchtext, Pageable pageable);

}

edit: Das problem bei dieser Lösung ist in der where-Klausel der @Query Anmerkung, da haben wir zu wiederholen, die genau die gleiche searchtext parameter für jede Spalte, die wir suchen wollen, die auf (Klärung der Frage nach dem Kommentar von Brandon Oakley)

Ich würde gerne wissen, ob es eine andere Art zu tun, weil die Anzahl der Spalten in einer Tabelle können hoch sein.

Vielen Dank für Ihre Hilfe.

  • Dies kann die Antwort auf Ihre Frage... stackoverflow.com/a/20121813/2267073
  • Ich bin nicht sicher, wie Sie Sie: das problem in meiner jetzigen Lösung ist in der where-Klausel der @Query Anmerkung, da haben wir zu wiederholen, die genau die gleiche searchtext parameter für jede Spalte, die wir suchen möchten. So Frage ich mich, ob es eine andere, elegantere Art und Weise zu tun, die uns erlauben würde, nur geben Sie den Namen der Spalten.
  • Deine Antwort ist sehr interessant, aber für andere Situationen. So, danke für die Anregung.
InformationsquelleAutor jplandrain | 2014-09-16
Schreibe einen Kommentar