如何在Spring Hateoas中扩展CollectionModel / PagedModel?

问题描述

我的一项服务需要使用的超媒体响应如下所示:

{
  "_embedded": {
    "content": [
      {
        "createdBy": "...","createdDate": "2020-03-07T14:21:27.507Z","id": "...","name": "item1","_links": {
          "self": {
            "href": ".."
          }
        }
      }
    ]
  },"_links": {
    "self": {
      "href": "..."
    },},"pageNumber": 1,"totalItems": 20,"pageSize": 10
}

查看与分页相关的信息是不是由Spring Hateoas PagedModel期望的,它应该具有单个“ page”属性,而不是pageNumber,totalItems和pageSize的单个属性

  "page": {
    "size": 2,"totalElements": 1000,"totalPages": 500,"number": 5
  }

最后,我要做的是通过添加这些单独的属性来扩展CollectionModel。这确实可以正常地反序列化上面显示的响应。但是,现在不推荐使用所有CollectionModel构造函数,而是可以使用“ CollectionModel.of”,但是它仅返回CollectionModel。

使用Spring Hateoas定制分页信息的正确方法是什么?

非常感谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)