Tengo un controlador REST que devuelve una lista de productos así:
Salida de corriente
[ { "id":1, "name":"Money market" }, { "id":2, "name":"Certificate of Deposit" }, { "id":3, "name":"Personal Savings" } ]Para que las cosas funcionen con nuestra biblioteca de cuadrícula JS, necesito modificar la respuesta para que se vea así:
Salida deseada
{ "data" : [ { "id":1, "name":"Money market" }, { "id":2, "name":"Certificate of Deposit" }, { "id":3, "name":"Personal Savings" } ] }Controlador
@RequestMapping(value = "/api/products", method = RequestMethod.GET) public ResponseEntity<?> getAllProducts() { List<Product> result = productService.findAll(); return ResponseEntity.ok(result); }¿Hay una manera fácil de modificar la respuesta JSON usando bibliotecas nativas de Spring?
Puede poner el objeto de resultado en un Mapa con "datos" clave y valor como resultado.
map.put("data", result);
Luego devuelva el objeto de mapa del método de descanso.
return ResponseEntity.ok(map) ;