Groovy-преобразование объекта в строку JSON


Я довольно привык к преобразователям Grails, где вы можете конвертировать любой объект в представление JSON точно так же (http://grails.org/Converters + Ссылка)

return foo as JSON

но в plain groovy, я не могу найти простой способ сделать это (http://groovy-lang.org/json.html)

JSONObject.fromObject(this)

возвращает пустые строки json...

я пропустил очевидный Заводной конвертер ? Или я должен пойти в библиотеку Джексона или gson?

3 56

3 ответа:

значит так:

import groovy.json.*

class Me {
    String name
}

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

println new JsonBuilder( o ).toPrettyString()

Я не мог получить другие ответы для работы в консоли оценки в Intellij so...

groovy.json.JsonOutput.toJson(myObject)

это работает довольно хорошо, но, к сожалению,

groovy.json.JsonOutput.prettyString(myObject)

не работает для меня.

чтобы получить его довольно напечатаны я должен был сделать это...

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

можно использовать 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()