Groovy - 将对象转换为JSON字符串

时间:2014-01-08 15:17:09

标签: json groovy

我已经习惯了Grails转换器,您可以将任何对象转换为JSON表示,就像这样(http://grails.org/Converters+Reference

return foo as JSON

但是在平常的时候,我找不到一个简单的方法(http://groovy-lang.org/json.html

JSONObject.fromObject(this)

返回空的json字符串......

我错过了一个明显的Groovy转换器吗? 或者我应该去杰克逊或格森图书馆吗?

3 个答案:

答案 0 :(得分:120)

你的意思是:

import groovy.json.*

class Me {
    String name
}

def o = new Me( name: 'tim' )

println new JsonBuilder( o ).toPrettyString()

答案 1 :(得分:13)

我无法在Intellij的评估控制台中得到其他答案,所以......

groovy.json.JsonOutput.toJson(myObject)

这很有效,但不幸的是

groovy.json.JsonOutput.prettyString(myObject)

对我不起作用。

为了得到漂亮的印刷品我必须这样做......

groovy.json.JsonOutput.prettyPrint(groovy.json.JsonOutput.toJson(myObject))

答案 2 :(得分:6)

您可以使用JsonBuilder

示例代码:

import groovy.json.JsonBuilder

class Person {
    String name
    String address
}

def o = new Person( name: 'John Doe', address: 'Texas' )

println new JsonBuilder( o ).toPrettyString()