除了使用transient关键字之外,还有其他方法可以在Grails域类中停止字段(也是域类对象)的持久性吗?

时间:2014-12-05 10:57:19

标签: grails gorm grails-2.0 grails-domain-class

class ContentA{
  String name
  ContentB[] contentBList
}

class contentB{
  Long typeId
  String typeName
}

ContentA和ContentB都是域对象,将在相应的调用中填充 我们提供的宁静服务。

  

org.hibernate.MappingException:无法确定以下类型:[Lcom.classes.ContentB;,在表:table_name,对于列:[org.hibernate.mapping.Column(content_b_list)

构建应用程序时出现上述错误。 当我们将ContentB添加到static transients{}时,它不会在生成的json字符串中呈现。我们使用json调用与服务交互并将Domain对象转换为json 字符串。有没有其他方法让ORM停止持久化contentB?

我们甚至尝试使用CustomMarshaller来生成效果不佳的json字符串。

1 个答案:

答案 0 :(得分:0)

您需要定义关联

class ContentA {
      String name
      static hasMany = [contentBList: ContentB]
}

GORM oneToMany