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

Jolt transform json-如何添加默认字段

洪弘毅
2023-03-14

我在下面输入< code>JSON:

{
  "id": "2ef8a2ee-054f-4b43-956a-8aa4f51a41d5",
  "type": "VOICE",
  "tags": [
    {
      "id": "some id 1",
      "description": "some description 1"
    },
    {
      "id": "some id 2",
      "description": "some description 2"
    }
  ],
  "transcription": {
    "key1": "val1",
    "key2": "val2"
  }
}

但是,输出 JSON 应类似,并且仅添加默认值:

{
  "id": "2ef8a2ee-054f-4b43-956a-8aa4f51a41d5",
  "created": "2019-06-18T18:12:37",
  "firstName": "Khusan",
  "lastName": "Sharipov",
  "status": "OPEN"
  "type": "VOICE",
  "tags": [
    {
      "id": "some id 1",
      "description": "some description 1"
    },
    {
      "id": "some id 2",
      "description": "some description 2"
    }
  ],
  "transcription": {
    "key1": "val1",
    "key2": "val2"
  }
}

这是我的JOLT规范:

[
  {
    "operation": "shift",
    "spec": {
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": {
        "": "TRASH",
        "*": {
          "$": "&2"
        }
      }
    }
  },
  {
    "operation": "remove",
    "spec": {
      "TRASH": ""
    }
  },
  {
    "operation": "default",
    "spec": {
      "firstName": "Khusan",
      "lastName": "Sharipov",
      "status": "OPEN"
    }
  }
]

我应该编辑<code>JOLT</code>规范,但我不明白(默认字段名、姓和状态如何工作。created可以添加为“created”:“@(3,ninjaed in time)”

共有1个答案

范福
2023-03-14

如果您只想添加新字段,您只需要使用默认操作,如下所示:

[
  {
    "operation": "default",
    "spec": {
      "firstName": "Khusan",
      "lastName": "Sharipov",
      "status": "OPEN"
    }
  }
]
 类似资料:
  • 问题内容: 我修改了一个表格,以这种方式向其中添加状态列 但是,对于创建的任何新ITEM,SQLite似乎都不会将N添加到该列中。语法是否错误,或者SQLite及其对默认值的支持是否存在任何问题。 我正在使用SQLite 3.6.22 问题答案: 对我来说看上去很好。 这是文档。 转储您的模式,并 在调用ALTER TABLE之后但在INSERT之前 验证 表结构是否存在。如果它在事务中,请 确保

  • 我正在尝试使用JOLT进行JSON转换,我想我已经很接近了,但是我不能做的是为每个当前没有出现的字段添加一个新字段。 我已经阅读了很多教程,下面的代码是我希望能够工作的。然而,它似乎没有添加到新的“名称”字段中。 这是我的震撼: 这是输出: 我希望它是这样的: 谁能告诉我哪里出错了?显然,默认值用于添加新项目,但它似乎没有执行任何操作。

  • 我创建了一个名为person的表,并使用liquibase变更集添加了一列“phone_number”。但现在我想为它添加一个默认值。但它不起作用,到目前为止,我已经尝试过: 和 和 有人能指出我哪里做错了,并且添加默认值会给以前添加的行增加值吗?

  • 例如: 是否有一种方法可以指定默认情况下总是添加的所有条件,而不在代码本身中提及它?在Hibernate core中有一个注释,但它不能用于mongo文档。

  • 最近,我尝试了一些语法来修改文件的小部分。在这些测试用例中,我会保持大部分文件的原样,只是在这里和那里修改一些小的部分,请参见这个回顾问题的示例。 因此,我需要一个(或几个)动作方法(即语法的action类中的方法),在这里我将使用make方法将文件的修改部分附加到match对象。问题是语法本身会有更多的标记/规则/正则表达式,并且嵌套复杂。因此,需要(通过依次调用)将小更改(当前附加到令牌的匹配

  • 问题内容: 我希望gcc 除了通常的include目录之外,还包含来自的文件,但似乎没有类似物。 我知道我可以在编译时(或在makefile中)在命令行中添加include目录,但是我真的想在这里采用通用方法,例如在库中。 问题答案: 尝试设置(对于C头文件)或(对于C ++头文件)。 正如Ciro所述,它将为C和C ++(以及任何其他语言)设置路径。 在GCC文档中有更多详细信息。