我试图使用grails来阻止接口基类域类,并且我在运行时遇到错误。错误类型为Could not determine type for: com.testApp.MyInterface , at table: C
。
// in /src/groovy directory
interface MyInterface{
int returnSomething()
}
// in domain class directory
class A implements MyInterface{
int returnSomething(){
//a first implementation here
}
}
class B implements MyInterface{
int returnSomething(){
//a second implementation here
}
}
class C {
....
MyInterface type
..............
}
我认为因为我没有指定" MyInterface"在域类C中,grails在启动时注入bean时会遇到麻烦。但我想尽可能保持MyInterface
抽象,因为不同类会以各种方式实现它。有没有办法克服这个错误?我可以在没有域类扩展的情况下构建我的模型(我希望尽可能避免这种情况)吗?
答案 0 :(得分:0)
只有在想要保留数据时才需要域类。在不了解您的具体情况的情况下,您可能希望创建A,B和C类服务而不是域类。根据我的经验,子类和接口在服务领域比域类领域更好地工作。我想,每个returnSomething()实现都可以在不需要接口的不同域类上运行。