Grails 在mongodb标准中使用结果转换器

Grails 在mongodb标准中使用结果转换器,grails,grails-2.3,Grails,Grails 2.3,我们在Grails2.3.5应用程序中使用MongoDB,而不使用hibernate。是否有任何方法可以使用resultTransformer像在hibernate中一样将属性投影转换为Map 例如: User.withCriteria { resultTransformer(CriteriaSpecification.ALIAS_TO_ENTITY_MAP) projections { property('name', 'fullNa

我们在Grails2.3.5应用程序中使用MongoDB,而不使用hibernate。是否有任何方法可以使用
resultTransformer
像在hibernate中一样将属性投影转换为
Map

例如:

  User.withCriteria {
        resultTransformer(CriteriaSpecification.ALIAS_TO_ENTITY_MAP)
        projections {
            property('name', 'fullName')
        }
        def now = new Date()
        between('joinDate', now-365, now)
  }

这在hibernate中工作。Grails MongoDB是否支持这一点,或者有其他替代方法。

否ResultTransformer是一个特定于Hibernate的API,因此无法使用。您可以编写一个通用的PostQuery事件监听器(请参阅),它可以转换结果并注册监听器()


但这是一种通用的方法,并不是真正的按查询执行

什么是真正的不按查询执行。你能再解释一下吗。如果用于域类,这是否会导致性能下降?我的意思是,当您按照上面所述添加查询侦听器时,它将全局添加到应用程序中的所有查询中。哦,我明白了。我必须尝试一些不同的东西。