我在Groovy的对象中有一些数据需要转换为JSON字符串数组。最终的结果应该是..
[
{
"keys":{
"passcode": "12345"
},
"values":{
"EmailAddress": "john@doe.com",
"message": "Hello, is it me you are looking for?"
}
}
]
我发现这个post但是使用JSON Builder的接受的答案没有意义,使用JSON转换器的第二个答案没有用......
def deJson = [
keys: [
passcode: secretCode
],
values: [
EmailAddress:emailData.to[0],
message: content.message
]
] as grails.converters.JSON
当我需要一个数组时,这会创建一个JSON对象。
有人可以建议我如何使用JSON Builder或JSON转换器创建一个像上面一样的数组字符串吗?
答案 0 :(得分:3)
JSON
特定于Grails(如前一篇文章的答案中的一条评论中所述)。你应该在帖子中跟踪问题本身,它有答案。
使用groovy.json.JsonBuilder
,序列化的预期方式是:
def jsonObj = [
keys: [
passcode: secretCode
],
values: [
EmailAddress:emailData.to[0],
message: content.message
]
]
// In order to get a json array, use a list containing the object
new JsonBuilder([jsonObj]).toPrettyString()