【发布时间】:2012-05-14 22:31:04
【问题描述】:
我需要 Hibernate,因为我使用的一些插件依赖于它。 所以我同时使用 MongoDB 和 Hibernate 插件。
有没有办法让 MongoDB 处理插件域类而不直接编辑域类文件?最干净的方法是什么?
欢迎提出任何建议。 提前致谢。
【问题讨论】:
标签: mongodb grails grails-domain-class database
我需要 Hibernate,因为我使用的一些插件依赖于它。 所以我同时使用 MongoDB 和 Hibernate 插件。
有没有办法让 MongoDB 处理插件域类而不直接编辑域类文件?最干净的方法是什么?
欢迎提出任何建议。 提前致谢。
【问题讨论】:
标签: mongodb grails grails-domain-class database
当然有办法
你应该添加
static mapWith = "mongo"
例如在您的域类中
class Example {
static mapWith = "mongo"
ObjectId id
String someProperty
}
最好的解决方案是制作包含一些属性的抽象类
abstract class BaseDomain implements Serializable {
static mapWith = "mongo"
ObjectId id
}
然后在你的域类上扩展它
class Example extends BaseDomain{
String someProperty
}
【讨论】:
static mapWith 属性可以让我的域类由 mangoDB 处理。我实际上正在寻找的是一种将插件域类分配给 MongoDB 的方法。例如:我将spring security ui plugin 添加到我的应用程序中,该应用程序具有RegistrationCode 域类。它默认由 Hibernate 处理。知道这个域类在插件代码中,而不是直接在我的应用程序代码中,让 MongoDB 处理它的最干净的方法是什么?