grails - 如何使创建的JSON对象成为Groovy对象,以便我通过dot(.)运算符访问属性

标签 grails groovy jsonbuilder

我通过JSONBuilder类创建了一个JSON对象:

def json = new JSONBuilder().build {...}

如何将这个JSON对象转换为groovy对象,以便可以通过dot('。')运算符访问json属性?
JSON对象具有一个字段-目标。
我可以访问属性:
target.someProperty

但是目标属性(property)受到保护。
还有其他方法可以访问json属性吗?

附言
目前,我使用变通方法:
new JsonSlurper().parseText(json.toString())

它有效,但是我想要一些简单的方法。

最佳答案

您可以执行以下操作:

    JSONObject jsonObject = JSON.parse(json.toString()) as JSONObject

    println jsonObject.validproperty

    MyObject myObject = new MyObject(properties:jsonObject.properties)

这(很大程度上)取决于(显然)JSONObject和MyObject之间的映射,但是它应该可以工作。

关于grails - 如何使创建的JSON对象成为Groovy对象,以便我通过dot(.)运算符访问属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29082433/

相关文章:

json - Groovy JsonBuilder 在 toString() 时的奇怪行为

arrays - 如何使用带有 .each 的 groovy jsonbuilder 创建数组?

grails - Gradle 与 Gant

hibernate - 使用LazyList时,Grails一对多关系无法创建回到父级的链接

docker - 从单个 Jenkinsfile 运行多个 Docker 容器

grails - JSON中的反向编码

grails - GroovyDynamicMethodsInterceptor

grails - Grails Multi-Tenant tenantResolve没有bean定义

java - GroovyShell:嵌入式执行