首页 > 解决方案 > 如何使用 groovy 反序列化 json

问题描述

我正在尝试使用 groovy 解析 JSON 文件。杰森:

{
    "Node1": {
        "Environment": "NPR",
        "OS": "linux",
        "Policy_Group": "abc"
    },
    "Node2": {
        "Environment": "NPR",
        "OS": "linux",
        "Policy_Group": "xyz"
    }
}

如何使用 groovy 获取 Environment、OS、Policy_Group 的值。

我在下面尝试,但它不工作

serverJson[serverLabel].each { serverData ->
print serverData.Environment
print serverData."Environment"
}

serverlabel是json文件在哪里Node1Node2serverJson

标签: jsongroovy

解决方案


File file = new File("path_to_file\\example.json");
slurperResponse = new JsonSlurper().parse(file);

slurperResponse.each{
    it -> 
      print (it.getValue().get("Environment"));
      print (it.getValue().get("OS"));
}

这里的“它”是一个隐式变量。检查文档

这些是您需要的进口产品;

import groovy.json.JsonSlurper;

推荐阅读