从包含两个类的包装类生成 Json 时尝试跳过一级

问题描述 投票:0回答:1

所以我在 REST API 的 Spring Boot 应用程序中有这个域类,其中包含两个子域对象:

public class Maximize {

   
    private Profit profit;
   
    private Stats stats;
...

生成的 JSON 如下所示:

{
    "profit": {
        "request_ids": [
            "id_001",
            "id_003"
        ],
        "total_profit": 88
    },
    "stats": {
        "avg_night": 10,
        "min_night": 8,
        "max_night": 12
    }
}

但我需要它看起来像这样:

{
    "request_ids": [
        "id_001",
        "id_003"
    ],
    "total_profit": 88,
    "avg_night": 10,
    "min_night": 8,
    "max_night": 12
}

所以,我需要的是取消 json 中的利润和统计级别并只打印其内容

我尝试重写 Maximixe 类的 toString() 方法,查看 Gson 库,但我找不到简单的方法,有什么提示吗?

java json spring-boot serialization jsonserializer
1个回答
0
投票

Spring Boot 中的 JSON 处理不像文本编辑器,您可以随意删除行。

你可以

  • 使用所需的结构为目标对象定义不同的类(正确的方法),将源映射到目标,然后序列化目标,或者
  • 将所有内容放入
    Map<String, Object>
    中,并为该数组添加
    List<String>
    。地图的键将成为属性的名称。然后序列化地图。
© www.soinside.com 2019 - 2024. All rights reserved.