class Book {
String title
static mapping = {
title type: "text"
}
}
类型
用途
设置特定数据属性的 Hibernate 类型。
示例
更改为文本类型(CLOB 或 TEXT,取决于数据库方言)
具有多列的用户类型
class Book {
...
MonetaryAmount amount
static mapping = {
amount type: MonetaryUserType, {
column name: "value"
column name: "currency", sqlType: "char", length: 3
}
}
}
描述
用法:association_name(type:string/class)
Hibernate 将根据正在使用的 Dialect
类中的配置,尝试从基于字段类型的数据库中自动选择合适的数据库类型。但如果需要,可以覆盖默认设置。例如,String
值默认映射到 varchar(255)
列。要存储较大的 String
值,可以使用 text
类型
static mapping = {
title type: "text"
}
Hibernate 还具有自定义 UserType
实现的概念。在这种情况下,指定 UserType
类。如果 UserType
映射到多列,可能需要指定每个列的映射
static mapping = {
amount type: MonetaryUserType, {
column name: "value"
column name: "currency", sqlType: "char", length: 3
}
}