【发布时间】:2011-04-11 10:07:49
【问题描述】:
有很多类似的问题,但我无法准确找到如何在 grails 应用程序中使用 POJO 模型。考虑以下 Java Bean:
package com.example.java;
public class UserBean {
String name;
String surname;
Integer age;
//--- assume setters and getters here
}
还有一个 grails 域类:
package com.example.grails
class User extends com.example.java.UserBean {
static constraints = {
name(blank:false)
surname()
age()
}
}
还有一个带有scaffold=true 的配套控制器。我不确定这是否应该起作用,但我没有看到任何其他建议。这编译并运行良好,直到我尝试从生成的视图中添加一个新用户。然后我得到了
org.hibernate.MappingException: Unknown entity: com.example.grails.User
有什么想法吗?
【问题讨论】:
-
我认为这是不可能的。你为什么要扩展 POJO 呢? Groovy 会自动为您生成 getter 和 setter……只需将成员变量复制/粘贴到域类中并调用它即可。
-
如果你已经用 Java 编写了你的领域模型,你会怎么写一个 grails 应用程序?
-
如果你的领域模型是用java用hibernate编写的,你可以在grails中使用你的hibernate映射来使你能够使用你的POJO。我不熟悉如何做到这一点。详情请查看用户指南的“Grails 和 Hibernate”部分。