Domain 类的简介

在MVC模式(Model View Controller)中domain类履行M的职责,表示映射到基础数据库表上的持久性实体. 按照约定所有的domain类都存放在 domain 目录下.:

使用IDE或文本编译器书写以下代码.

import grails.persistence.Entity;
import org.grails.datastore.gorm.GormEntity
@Entity
class Book implements GormEntity<Book>{
    String title;
    Date releaseDate;
    Author author;
}

domain类需要实现GormEntity接口和增加Entity注解.

默认情况下,类名称,映射到表名小写,若domain类使用驼峰表示法则使用下划线分隔.例如若类名是 BookStore`则默认映射的表名为 `book_store. 每个属性映射到单个数据表列.

默认表命名方案的一个限制是,具有相同名称的2个域类是有问题的,即使它们被定义为不同的的包内.例如`com.bookstore.Book` and org.yunchen.utility.Book 都映射到一个表名 book.应用中碰过这类问题,可以给不同的类名称或在mapping中提供具体的表名来解决,如:

import grails.persistence.Entity;
import org.grails.datastore.gorm.GormEntity
@Entity
class Book implements GormEntity<Book>{
    String title;
    Date releaseDate;
    Author author;
    static mapping = {
        table (name:"book_table")
        comment "图书表"
}

全部方法: addTo方法 , attach方法 …​..

参看 reference 部分查看更多domain类的方法和使用.

参看 GORM 了解更多.