Mongodb 获取groovy类的所有动态字段

Mongodb 获取groovy类的所有动态字段,mongodb,grails,dynamic,groovy,field,Mongodb,Grails,Dynamic,Groovy,Field,在我的应用程序中,我需要使用类的动态字段。 对象从json请求持久化到MongoDB(也是动态的): Object obj = new Object() def objectData = request.JSON.object for(item in objectData) { obj[item.key] = item.value } obj.save(flush: true) 但是,当我试图从Mongo取回objct时,这种方式: List<Object> objects

在我的应用程序中,我需要使用类的动态字段。 对象从json请求持久化到MongoDB(也是动态的):

Object obj = new Object()
def objectData = request.JSON.object
for(item in objectData) {
    obj[item.key] = item.value
}
obj.save(flush: true)
但是,当我试图从Mongo取回objct时,这种方式:

List<Object> objects = Object.list()

    def objList = new ArrayList();

    def filtered = ['class', 'active', 'metaClass', 'version']
    for(obj in objects) {
        objList.add(obj.properties)
    }
当然,我只能获取每个对象的“dbo”,并手动过滤我不需要的内容,但它看起来是错误的。获取对象的所有属性(包括动态属性)的正确方法是什么

对象类的定义:

package com.iibs.mongo

class Object {
    String id
    static mapWith = "mongo"
    static constraints = {
    }
}

谢谢,

是否:
obj.getClass().declaredFields.findAll{!it.synthetic}
帮助?如果你有一个实际的类,但它看起来像是在把值塞进一个对象?就是这样,没有声明:)你声明过一个名为
对象的类吗?
?我声明过,但没有字段。调用它
对象
会给你带来各种痛苦。。。你能发布它的定义吗?
package com.iibs.mongo

class Object {
    String id
    static mapWith = "mongo"
    static constraints = {
    }
}