Есть ли способ сортировки по условию? - PullRequest
0 голосов
/ 03 февраля 2019

У меня дружба, смоделированная как дружба сущности с отправителем и получателем составного ключа.

Ниже у меня есть текущий запрос, который я использую, чтобы завести друзей человека.Мне нужно отсортировать друзей по фамилии или имени.Проблема в том, что с моей моделью я точно не знаю, какой столбец является другом, а какой - пользователем.

В настоящее время я могу думать о том, чтобы выбрать всех друзей и выполнить сортировку в коде Java.

У меня вопрос, есть ли способ использовать pagable для сортировки?

@Query("SELECT f FROM Friendship f WHERE f.key.to.id = :user OR f.key.from.id = :user")
Page<Friendship> findActiveFriendships(@Param("user") Integer user, Pageable pageable);

1 Ответ

0 голосов
/ 03 февраля 2019

findAll(Pageable) метод, который дает вам Page и параметры запроса по умолчанию, поэтому ваш репозиторий должен расширяться от PagingAndSortingReposigory, например, если вы используете этот метод, чтобы вы могли определить путем запроса способ сортировки,например: localhost / entity? sort = фамилия, desc

См. https://docs.spring.io/spring-data/data-commons/docs/1.6.1.RELEASE/reference/html/repositories.html

...