【发布时间】:2014-04-11 03:01:02
【问题描述】:
我在 Grails (http://grails.org/doc/2.3.x/guide/GORM.html#customHibernateTypes) 中使用自定义休眠类型,并将该类型映射到多个列。但是,我有点难以弄清楚如何对这些自定义类型进行数据绑定。我可以使用@BindUsing 注释,但是,我只有一个属性和多个列。
例如,这是一个 groovy 类(它将具有使用正确定义的 CustomDataUserType 类创建的自定义类型):
class CustomData
{
String field1
String field2
}
这是一个将此类作为属性的域模型
class DomainModel
{
static mapping = {
customData type: CustomDataUserType, {
column name: "field1"
column name: "field2"
}
@BindUsing { obj, source ->
// The source contains a field/property called customData (otherwise
// this BindUsing closure doesn't get called) however, I need two
// values
}
CustomData customData
}
我的问题是,在 BindUsing 闭包内,源包含一个值,一个名为 customData 的属性。但是,我需要两个值来重新创建自定义对象。这个问题一般是怎么解决的?
【问题讨论】:
标签: hibernate grails data-binding groovy custom-type