更改由 CollectionModel 创建的 json 响应中的单词 'content'
Change word 'content' in json response created by CollectionModel
我想知道是否可以更改 JSON 响应中的 'content' 一词。 CollectionModel 正在创建链接和内容。
JSON 示例:
{
"links": [],
"content": [
{
"id": 1,
"name": "Pontar",
"ownerName": "Pontar",
"country": "Australia",
"dateCreated": "28-09-2015"
},
{
"id": 193074,
"name": "Agri",
"ownerName": "Agri",
"country": "Mexico",
"dateCreated": "28-08-2016"
}
]
}
创建此响应的方法:
@GetMapping
public ResponseEntity<CollectionModel<FarmListDto>> getAllActiveFarms() {
List<Farm> farms = farmsService.findActiveFarms();
List<FarmListDto> dtoList = FarmListMapper.INSTANCE.map(farms);
return ResponseEntity.ok(new CollectionModel<FarmListDto>(dtoList));
}
提前致谢。
ResponseEntity 确实从您的 java 对象序列化,通常,它由某些库(例如 jackson
)发生。有更改 属性 名称声明性的现成解决方案。例如:
@JsonProperty("contentList")
private List<...>content;
如果您使用 jackson
只需使用上面的代码。否则尝试使用反序列化库找到类似的解决方案。
我想知道是否可以更改 JSON 响应中的 'content' 一词。 CollectionModel 正在创建链接和内容。 JSON 示例:
{
"links": [],
"content": [
{
"id": 1,
"name": "Pontar",
"ownerName": "Pontar",
"country": "Australia",
"dateCreated": "28-09-2015"
},
{
"id": 193074,
"name": "Agri",
"ownerName": "Agri",
"country": "Mexico",
"dateCreated": "28-08-2016"
}
]
}
创建此响应的方法:
@GetMapping
public ResponseEntity<CollectionModel<FarmListDto>> getAllActiveFarms() {
List<Farm> farms = farmsService.findActiveFarms();
List<FarmListDto> dtoList = FarmListMapper.INSTANCE.map(farms);
return ResponseEntity.ok(new CollectionModel<FarmListDto>(dtoList));
}
提前致谢。
ResponseEntity 确实从您的 java 对象序列化,通常,它由某些库(例如 jackson
)发生。有更改 属性 名称声明性的现成解决方案。例如:
@JsonProperty("contentList")
private List<...>content;
如果您使用 jackson
只需使用上面的代码。否则尝试使用反序列化库找到类似的解决方案。