Groovy 处理JSON
发布时间:2020-12-14 16:38:00 所属栏目:大数据 来源:网络整理
导读:JsonOutput JsonOutput类用于将Groovy对象转换为JSON字符串。使用起来非常简单。JsonOutput功能很强,可以转换各种基本类型、数组、列表、Map、自定义对象等等。对结果再次调用 prettyPrint 方法,还可以获得格式化的输出,非常方便。 static void parseSimp
JsonOutputJsonOutput类用于将Groovy对象转换为JSON字符串。使用起来非常简单。JsonOutput功能很强,可以转换各种基本类型、数组、列表、Map、自定义对象等等。对结果再次调用 static void parseSimpleObject() {
def book = new Book(id: 1,name: 'Thinking in Java')
def jsonOutput = new JsonOutput()
def result = jsonOutput.toJson(book)
println(result)
//格式化输出
println(jsonOutput.prettyPrint(result))
}
//结果
{"id":1,"name":"Thinking in Java"}
{
"id": 1,"name": "Thinking in Java"
}
JsonSlurperJsonSlurper和JsonOutput相反,用于将Groovy对象转换为Json字符串。它提供了很多parse方法,可以从文件、数组、字节流等各种地方转换对象,这里调用的是parseText方法,从字符串中转换对象。注意转换结果是一个Map,当然如果对象很简单,我们可以使用Groovy的Map解构用Map创建实际对象。 static void parseSimpleJson() {
def text = '{"id":1,"name":"Thinking in Java"}'
def jsonSlurper = new JsonSlurper()
//获取到的是Map对象
def map = jsonSlurper.parseText(text)
println(map)
//将Map转换为实际对象
def obj = new Book(map)
println(obj)
}
用JsonSlurper的时候需要注意,数组会被转换为ArrayList对象,而object会被转换为Map对象。在进行复杂对象处理的时候要留意这些返回值。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |