当前位置: 首页 > 知识库问答 >
问题:

Spring Boot修改默认JSON响应

徐昆
2023-03-14

我有一个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响应?

共有2个答案

林国安
2023-03-14

使用组织。json库:

JSONObject json = new JSONObject();
json.put("data", result);

put方法在对象中添加或替换值。

阴凯歌
2023-03-14

您可以将结果对象放入带有键“data”和值作为结果的地图中。

map.put("数据",结果);

然后从rest方法返回map对象。

return ResponseEntity。ok(地图)

 类似资料:
  • 当通过URL调用我的Web应用程序中不存在的项目时,Spring会使用JSON响应,其中包含(时间、状态、错误、消息、路径)等数据。所以,我需要更改这个JSON的结构,特别是我需要删除路径。我该怎么做?我应该在我的项目中在哪里实现异常的自定义?向大家问好! json响应修改

  • 问题内容: 当前,来自spring boot的错误响应包含如下标准内容: 我正在寻找一种方法来消除响应中的“ exception”属性。有没有办法做到这一点? 问题答案: 如有关错误处理的文档中所述,您可以提供自己的bean,该bean实施以控制内容。 一个简单的方法就是继承。例如:

  • 问题内容: 我有一个需要修改数据库表中列默认值的要求。该表已经是数据库中的现有表,并且当前该列的默认值为NULL。现在,如果将新的默认值添加到此列,如果我是正确的话,它将列的所有现有NULL更新为新的DEfault值。有没有一种方法可以不执行此操作,但仍在列上设置新的默认值。我的意思是我不想更新现有的NULL,并希望它们保留为NULL。 在这方面的任何帮助,不胜感激。谢谢 问题答案: 您对将会发生

  • 默认情况下,Tomcat配置的默认端口是8080。这就是为什么所有已部署的Web应用程序都可以通过URL访问的原因:http://localhost:8080/yourapp。如果希望应该在80端口上运行,则需要将默认端口8080更改为80,这是HTTP连接器的默认端口。 要更改此端口,请打开并找到以下内容: 更改为以下内容: 修改后,您可以使用"http://localhost/"来访问您的应用

  • 我有一个apikey“令牌”,它必须在每个请求中作为查询参数提供。我如何设置翻新,以便始终在请求中包含此查询参数? 我当前将内标识作为默认参数提供: 但是由于我知道每个请求都需要相同的令牌,所以在我创建的每个请求函数中必须提供它作为默认参数,这感觉是多余的。我如何设置reverfit来用默认的查询参数修饰每个传出的请求? 这是我如何构建reverfit2实例的: 我认为在调用.build()之前,

  • 本文向大家介绍MySQL5.7修改默认root密码,包括了MySQL5.7修改默认root密码的使用技巧和注意事项,需要的朋友参考一下 MySQL5.7 开始,增加了很多安全性的更新,老版本的用户可能会有一些不习惯。 5.7.6 版本以后,首次安装并启动MySQL数据库时,会生成一个临时密码到日志文件。如下: 临时密码为:nWoo>o0rXtr4。 使用该密码登陆数据库,但是不能进行任何操作,提示