Grails支持多对多关联,这种关联需要在关联的两方都定义hasMany,并在关联的被拥有方定义belongsTo: class Book {
static belongsTo = Author
static hasMany = [authors:Author]
String title
}
class Author {
static hasMany = [books:Book]
String name
}
Grials在数据库层使用连接表来映射多对多关联。关联的拥有方,在这里是Author,负责持久化这个关联,并且它是唯一可以级联保存对方的一方。
比如下面的代码可以工作,并会级联保存:
new Author(name:"Stephen King")
.addToBooks(new Book(title:"The Stand"))
.addToBooks(new Book(title:"The Shining"))
.save()
但是下面的代码只保存 Book 而不保存authors!
new Book(name:"Groovy in Action")
.addToAuthors(new Author(name:"Dierk Koenig"))
.addToAuthors(new Author(name:"Guillaume Laforge"))
.save()
这正是我们期望的行为,跟Hibernate中一样,多对多关联中只有一方可以管理关联。
分享到:
相关推荐
Grails Grails Grails Grails Grails
Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南
Grails项目的应用越来越多,而对于初学者来说,在Eclipse下搭建Grails项目是一个难题,这个文档将教会你如何搭建Grails项目,希望对你有所帮助。
用grails开发过程中,项目优化配置,系统间调用等的总结。
Grails入门指南中文pdf -- 针对grails1.0.4更新,附加idea8 开发grails的流程
Grails1.1中文文档
Grails尽量为更多现有的Java项目创建一个全面的框架(不仅局限于视图处理),这和当前一些Java框架提供给用户的一种AnemicAPI形成了明显的对比。Grails的出现并不是偶然的,而是随着Web应用的日趋复杂及Web2.0和Ajax...
grails+Xfire webservice
grails-2.1.zip.001
grails grails入门经典 grails入门 grails例子 grails资料 通过自学一点点积累起来的,相信对你有帮助的。
在学习任何东西之前,最重要的是培养兴趣,Groovy世界最耀眼的技术之一--Grails相信大家早已耳闻,我将通过Grails实战系列文章 向您展现Grails的迷人风采,使您感受到Grails的魅力,以至疯狂地爱上Grails,并坠入...
详细讲解grails开发环境配置。 详细讲解grails连接mysql数据库,crud开发
Grails 中文 参考手册
grails核心源码,版本2.2.2,可以给对grails开发感兴趣的朋友做学习参考。
grails3.2.8 part1
Grails 1.3.7英文版官方参考手册,学习Grails的权威指南
grails-2.3.6
grails 中文文档+grails-fckeditor-0.9.5.zip插件
grails的插件系统也是其亮点之一。首先,和rails,django等web框架类似,基于微内核的思想,插件(可重用模块)是框架的一等公民。grails除了核心模块以外的功能几乎都是通过插件方式实现的。实际上,一个grails插件...