json - 嵌套 JSON 的 JOLT 转换?

标签 json jolt

我有一个如下所示的 JSON:

{
"Level1": {
    "Level2": {
        "val1": "Test",
        "val2": "Val"
    }
}

}

当我对此应用以下 Jolt shift 变换时:

[{
    "operation": "shift",
    "spec": {
        "Level1": {
            "Level2": {
                "val1": "val001",
                "val2": "val002"
            }
        }
    }
}]

我得到以下结果:

    {
    "val001": "Test",
    "val002": "Val"
}

为什么我在输出中看不到Level1、Level2?请有人帮忙,我想看到输出与输入太相似。

最佳答案

类次规范中的值通常指的是输出中键的位置,因此您需要在值中包含 Level1 和 Level2:

[{
  "operation": "shift",
  "spec": {
    "Level1": {
      "Level2": {
        "val1": "Level1.Level2.val001",
        "val2": "Level1.Level2.val002"
      }
    }
  }
}]

如果 Level1 和/或 Level2 可以是任意的,您可以使用 @ 运算符“返回树”并获取值(有关示例,请参阅 Shiftr javadoc)。

关于json - 嵌套 JSON 的 JOLT 转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49375313/

相关文章:

java - Jolt 不会将 json 转换为另一个 json

json - VBA从集合中获取值?

java - 如何在GSON中使用@SerializedName备用字段来反序列化嵌套对象?

javascript - 添加动态字段以创建特定的 JSON 格式

html - 适用于结构化数据的文本友好文件格式

json - Jolt 将 json 转换为 json 替换常量中的值

javascript - 指定属性返回它的js递归函数

java - 使用 Jolt 重新设置 JSON 对象的父级

java - 使用任何现有的 java 库/工具将输入示例从 JSON 转换为 JSON

java - Jolt 变换未命名数组