java - 使用 JOLT 通过字典替换数据值

标签 java json jolt

我有一个 jolt 规范,正在执行一些简单的数据转换。接下来我需要做的是将值替换为 map 中的对应值。它看起来像这样:

静态数据

replacementDictionary = {
    "1": "Doug",
    "2": "Jake",
    "3": "Raymond"
}

以及要替换的数据:

输入

{
     "name": "1",
     "address": "123 Fake Street"
}

所需输出

{
     "name": "Doug",
     "address": "123 Fake Street"
}

如果它简化了任何事情,一次只有一条记录。

最佳答案

您可以使用“switch/case”之类的东西将您的值转换为所需的字符串:

输入

{
  "name": "1",
  "address": "123 Fake Street"
}

规范

[
  {
    "operation": "shift",
    "spec": {
      "name": {
        "1": {
          "#Doug": "name"
        },
        "2": {
          "#Jake": "name"
        },
        "3": {
          "#Raymond": "name"
        }
      },
      "address": "&"
    }
  }
  ]

输出

{
  "name" : "Doug",
  "address" : "123 Fake Street"
}

关于java - 使用 JOLT 通过字典替换数据值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56498062/

相关文章:

python - 如何展平 Pandascore E-Sports GET 响应格式的 JSON 数据,以便在 pandas 中拥有非常干净的数据框?

android - 如何通过 onListItemClick(使用 Volley/JSON)打开 WebView?

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

jolt - 如果值不存在则设置为 null,否则如果在 jolt 中存在则返回现有值

java - 数组输入的 Jolt 变换 JSON 规范

Java——缓冲读取

javascript - JSON.stringify 抛出 RangeError : Invalid string length for huge objects

java - JDBC 连接池 : Connection Reuse?

java - 如何从 Servlet 访问/调用 Java 程序

java - 西里尔字母验证