Применить аннотацию @OrderBy в API остальных не упорядочивая - PullRequest
0 голосов
/ 27 апреля 2020

Я пытаюсь применить аннотацию @OrderBy в моем API отдыха, я пытаюсь упорядочить вывод по styleName, однако он не упорядочивается по styleName и по-прежнему отображает все из них по порядку Я проверяю это в Почтальоне. Как неправильно реализовать аннотацию @OrderBy.

оператор импорта, который я использую для @OrderBy, равен

import javax.persistence.OrderBy;

Я знаю, что могу создать новый запрос, подобный этому

@NamedQuery(name = "Styles.findAll", query = "SELECT s FROM Styles s ORDER BY s.name")

однако я хотел бы использовать аннотацию @OrderBy

Я поместил аннотацию @Orderby в методе Controller, который является контроллером

  @GetMapping(produces=MediaType.APPLICATION_JSON_VALUE)
  @OrderBy("Styles.styleName DESC")
    public List<Styles> GetAllStyles() {

        return service.getAllStyles();
    }

можно сделать что-то похожее на сервис и контроллер, где вместо фильтрации данных можно сортировать по имени столбца

, сервис -

  public List<Styles> getAllStyles() {
        EntityManager em = DBUtil.getEMF().createEntityManager();

        List<Styles> list = null;

        try {
        list = em.createNamedQuery("Styles.findAll", Styles.class)
                .getResultList();
        if (list == null || list.isEmpty()) {
            list = null;
        }

    } finally {
        em.close();
    }
    return list;

}

JPA, который я использую

1027 *

1 Ответ

0 голосов
/ 27 апреля 2020

Поскольку вы используете javax.persistence.OrderBy и следуете его документации, его следует применить в Entity или JPA (особенно для Spring), чтобы заставить его работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...