我正在尝试来自Spring data的Page和Pagable接口。它以以下格式返回JSON
{"content":
[... my objects ...],
"last":false,
"totalPages":7,
"totalElements":13,
"size":2,
"number":0,
"sort":null,
"first":true,
"numberOfElements":2}
我的问题是如何更改这些JSON元素的名称?
我工作的公司对服务JSON命名约定有严格的指导方针,所以开箱即用不适合我,但如果可以更改这些名称,我可以使用它。
4条答案
按热度按时间5ssjco0h1#
创建一个类,可能名为
PageWrapper
,它实现org.springframework.data.domain.Page
并具有一个构造函数,该构造函数获取另一个Page
作为参数。将所有方法调用委托给 Package 的Page
示例。之后,您可以使用@JsonProperty
注解来重命名序列化的JSON中的字段。用PageWrapper
的示例 PackagePage
(实际上是PageImpl
)示例,并将资源方法的返回类型更改为PageWrapper
。8yoxcaq72#
尝试使用:
reference
kognpnkq3#
正如在上一个答案中所说,最好的做法是使用页面 Package 器,这意味着您必须构建一个页面来创建您想要公开的资源的表示形式。
它将帮助您将链接放在内容之间进行分页,并具有元数据(页面总数、大小、元素数量等)。)就像可分页的界面一样。
这里有一个简短的例子。提供了完整的示例HERE
希望它能帮上忙!
kh212irz4#
使用
@JsonProperty
重命名。示例如下: