Как отсортировать свойство встроенного объекта с помощью Pageable? - PullRequest
0 голосов
/ 19 декабря 2018

У меня есть сущность, встроенная в другую, как показано ниже.Репозиторий создан на DepEntity.Я пытаюсь получить объекты DepEntity, отсортированные по столбцу totalExp в ExpEntity.Я выполняю вызов GET с использованием Pageable и получаю сообщение об ошибке:

2018-12-18 05: 17: 58.172 ПРЕДУПРЕЖДЕНИЕ 7 --- [http-nio-8000-exec-3] .mmaExceptionHandlerExceptionResolver: Решено [org.springframework.data.mapping.PropertyReferenceException: не найдено свойство totalExp для типа DepEntity!]

Я пробовал с totalExp, exp.totalExp и exp_totalExp, но ни один из них не работал,Версия jpa данных весны - 2.1.1

@Entity
public class DepEntity {
    @Embedded
    private ExpEntity exp;
}

@Embeddable
public class ExpEntity {
    @Column(name = "exp_total")
    private BigDecimal totalExp;
}

Я ожидаю результаты в отсортированном порядке для вложенного свойства totalExp.Есть ли способ добиться этого?

1 Ответ

0 голосов
/ 19 декабря 2018

Ниже должно работать:

Sort sort = new Sort(Direction.DESC, "exp.totalExp");
PageRequest pageRequest = PageRequest.of(0, 10, sort);
Page<DepEntity> depEntities  = depEntityRepository.findAll(pageRequest);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...