我有一个REST控制器,它返回如下产品列表:
当前输出
[
{
"id":1,
"name":"Money market"
},
{
"id":2,
"name":"Certificate of Deposit"
},
{
"id":3,
"name":"Personal Savings"
}
]
为了让我们的JS网格库工作,我需要修改响应,如下所示:
所需的输出
{ "data" :
[
{
"id":1,
"name":"Money market"
},
{
"id":2,
"name":"Certificate of Deposit"
},
{
"id":3,
"name":"Personal Savings"
}
]
}
控制器
@RequestMapping(value = "/api/products", method = RequestMethod.GET)
public ResponseEntity<?> getAllProducts() {
List<Product> result = productService.findAll();
return ResponseEntity.ok(result);
}
是否有一种使用本机Spring库修改JSON响应的简单方法?
答案 0 :(得分:6)
您可以将结果对象放入带有键&#34;数据&#34;的地图中。和结果的价值。
map.put("data", result);
然后从rest方法返回map对象。
return ResponseEntity.ok(map)
;
答案 1 :(得分:3)