扩展grails域对象是个好主意吗?

扩展grails域对象是个好主意吗?,grails,extending,domain-object,Grails,Extending,Domain Object,我需要类似于grails域对象的对象,它不需要持久化。为了使我不必对任何字段更改在两个位置进行更改,扩展domain类是否是一个好主意,以便我可以获得单个字段集的好处。尽管所有相关的对象和集合都需要重做。@cfrick已就位。一个优秀的特质是一个很好的选择。你可以得到一个完整的例子(我知道这个项目名声不好)。下面是一个简单的例子: // MyTrain.groovy: Put this in src/main/groovy/my/package package my.package trait

我需要类似于grails域对象的对象,它不需要持久化。为了使我不必对任何字段更改在两个位置进行更改,扩展domain类是否是一个好主意,以便我可以获得单个字段集的好处。尽管所有相关的对象和集合都需要重做。

@cfrick已就位。一个优秀的特质是一个很好的选择。你可以得到一个完整的例子(我知道这个项目名声不好)。下面是一个简单的例子:

// MyTrain.groovy: Put this in src/main/groovy/my/package
package my.package

trait MyTrait {
    Integer number
    String something
}

// MyDomainClass.groovy: This goes with the other domain classes.
package my.package

class MyDomainClass implements MyTrait {
    /*  
     * number and something properties are available here.
     * They become table columns.
     */  

    static constraints {
        /*  
         * And you can place constraints on them,
         * as it they had been declared in this class.
         */  
    }   
}

域类还包含许多其他内容。因此,不要扩展域类,将字段放在Groovy文件中,并将其扩展到域类中。也可以考虑使用<代码>特性不将自己锁定到继承地狱链接/非现有比特桶回购中。但这是一个很好的例子!谢谢