首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java SpringBoot中基于日期的排序

Java SpringBoot中基于日期的排序
EN

Stack Overflow用户
提问于 2018-08-07 03:54:52
回答 3查看 5.3K关注 0票数 -1

这是我的API服务,我需要使用api获取计算列表,但根据日期的降序对其进行排序,当前实现为升序

代码语言:javascript
复制
    /*
     * Get  Risk Evaluation based on id
     */
    public List<RiskEvaluation> getByTest(String test) {
        return riskEvaluationRepository.findByTest(test);
    }

控制器是

代码语言:javascript
复制
@GetMapping("/{test}")
    @ApiOperation(value = "gets", notes = "Get all the Risk Assessments based on TEST.", response = RiskEvaluation.class, tags = {"GetsAllRisksforaTEST",})
    public List<RiskEvaluation> getByTest(@PathVariable("test") String test) {
        return scoringService.getByTest(test);
    }

此API的当前输出为

代码语言:javascript
复制
{
        "accountID": null,
        "bap_id": "cccccccccc",
        "release_version": "1.9",
        "risk_level": "Medium",
        "risk_score": 2,
        "createdOn": 1533584332466,
        "updatedOn": 1533584332466,
        "id": "8340f05c-06c4-430a-bbbd-a53d0ce60dea"
    },
    {
        "accountID": null,
        "bap_id": "cccccccccc",
        "release_version": "1.9",
        "risk_level": "Medium",
        "risk_score": 2,
        "createdOn": 1533584551115,
        "updatedOn": 1533584551115,
        "id": "ae175b92-805d-46b5-8f67-95795e232057"
    },
    {
        "accountID": null,
        "bap_id": "cccccccccc",
        "release_version": "2.0",
        "risk_level": "Medium",
        "risk_score": 2,
        "createdOn": 1533584718584,
        "updatedOn": 1533584718584,
        "id": "d19177ef-b8c4-4951-bbdb-4e4d7274be81"
}

如何根据值createdOn对其进行排序

EN

回答 3

Stack Overflow用户

发布于 2018-08-07 04:03:59

如果您使用的是JpaRepository,您可以传递一个org.springframework.data.domain.Pageable对象,其中包含页面、大小和所需的排序顺序。

例如:

代码语言:javascript
复制
int page = 0, size = 10;

Pageable pageable = PageRequest.of(page, size, new Sort("createdOn", Sort.Direction.DESC));

..。

希望它能起作用!

票数 1
EN

Stack Overflow用户

发布于 2018-08-07 04:13:52

在你的scoringService中,你有一个调用RiskEvaluation存储库的方法吗?可能要这样做,它被用在JpaRepository或CrudRepository中,在任何人中如果它有findAll,你可以使用:

代码语言:javascript
复制
@Query("SELECT r FROM RiskEvaluation r ORDER BY createdOn ASC")
List<RiskEvaluation> findAll();

代码语言:javascript
复制
List<RiskEvaluation> findAllOrderByCreatedOnAsc();

您可以在https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.query-methods.details中看到这些示例。

代码语言:javascript
复制
interface PersonRepository extends Repository<User, Long> {

  List<Person> findByEmailAddressAndLastname(EmailAddress emailAddress, String lastname);

  // Enables the distinct flag for the query
  List<Person> findDistinctPeopleByLastnameOrFirstname(String lastname, String firstname);
  List<Person> findPeopleDistinctByLastnameOrFirstname(String lastname, String firstname);

  // Enabling ignoring case for an individual property
  List<Person> findByLastnameIgnoreCase(String lastname);
  // Enabling ignoring case for all suitable properties
  List<Person> findByLastnameAndFirstnameAllIgnoreCase(String lastname, String firstname);

  // Enabling static ORDER BY for a query
  List<Person> findByLastnameOrderByFirstnameAsc(String lastname);
  List<Person> findByLastnameOrderByFirstnameDesc(String lastname);
}
票数 0
EN

Stack Overflow用户

发布于 2019-05-14 01:42:26

代码语言:javascript
复制
Pageable pageable = PageRequest.of(0, 10, new Sort(Sort.Direction.DESC, "createdOn"));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51714776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档