Я использую Spring Data для подкачки и сортировки. Однако я хотел бы выполнить поиск по нескольким столбцам.Spring Data - Многоколоночные поиски
Теперь я использую аннотацию @Query в моем хранилище интерфейс, как это:
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);
}
редактировать: Проблема в этом растворе находится в пункте где аннотации @Query, потому что мы имеем повторить тот же самый параметр поиска для каждого столбца, который мы хотим найти на (уточнение вопроса после комментария Брэндона Оукли)
Я хотел бы знать, есть ли другой способ сделать, потому что количество столбцов в таблица может под кайфом.
Благодарим за помощь.
Это может ответить на ваш вопрос ... http://stackoverflow.com/a/20121813/2267073 –
Я не уверен, как: проблема в моем текущем растворе находится в ИНЕКЕ _ @ Query_ аннотации потому что мы должны повторить тот же самый параметр _searchtext_ для каждого столбца, который мы хотим найти. Поэтому я задаюсь вопросом, есть ли еще один более элегантный способ сделать это, чтобы мы могли просто указать имя столбцов. – jplandrain
Ваш ответ очень интересный, но для других ситуаций. Итак, спасибо за предложение. – jplandrain