Сортировка вложенных свойств Spring Data Rest с помощью JsonUnwrapped - PullRequest
0 голосов
/ 25 сентября 2018

Итак, у меня есть этот класс, использующий аннотации @EmbeddedId и @JsonUnwrapped

@Entity
class Order {
    @EmbeddedId @JsonUnwrapped
    private OrderPK pk;
    private String field1;
    private String field2;
    //...getters, setters
}

И это первичный ключ класса

@Embeddable
class OrderPK implements Serializable {
    private String orderNumber;
    private String company;
    //...getters, setters
}

Я хотел создать Spring DataСортировка REST обрабатывает поля в классе PK как верхние, а не как вложенные.По сути, я хочу использовать это: .../orders?sort=orderNumber,desc вместо .../orders?sort=pk.orderNumber,desc.Я не мог найти способ сделать это в документации.

1 Ответ

0 голосов
/ 26 сентября 2018

Вы больше не сможете достичь своей цели, если используете опцию @EmbeddedId для реализации составного ключа.Причина в том, что атрибуты, находящиеся под капотом класса EmbeddedId, не могут быть извлечены как плоские параметры.

Обратите внимание, что @JsonUnwrapped означает , а не , предназначенный для выполнения этой задачи.

Вы можете использовать следующую опцию вместо @EmbeddedId для достижения своей цели.

  • Используйте @IdClass.Следуйте этому примеру .
...