(快速参考)

对象关系映射GORM

4.0.2

对象关系映射GORM

域类是任何业务应用程序的核心,它们保持有关业务流程的状态,并希望还实现行为。它们通过一对一,多对多或多对多的关系链接在一起

365bet地区GORM是365bet地区对象关系映射ORM实现,它在后台使用了Hibernate一个非常流行且灵活的开源ORM解决方案,并且由于Groovy的动态特性,其静态和动态类型以及365bet地区的约定,因此涉及的配置要少得多。创建365bet地区域类

365bet地区您还可以用Java编写365bet地区域类。有关如何用Java编写域类但仍使用动态持久性方法的信息,请参见Hibernate Integration一节。

定义findByTitle"Groovy在行动"本书addToAuthors:"迪尔克·科尼格(Dierk Koenig)"addToAuthors:"纪尧姆·拉福格(Guillaume LaForge)"保存

快速入门指南

可以使用创建域类命令

grails创建域 你好,世界
365bet地区如果未使用创建域类脚本指定软件包,则365bet地区会自动使用应用程序名称作为软件包名称

这将在该位置创建一个类grails应用程序域helloworld Person groovy如下面的一个

你好,世界  {
}
如果你有dbCreate属性设置为更新创建或在您的数据源365bet地区365bet地区将自动为您生成修改数据库表

您可以通过添加属性来自定义类

  {
    整数日期lastVisit

拥有域类后,请尝试使用贝壳要么安慰通过键入

grails控制台

这将加载一个交互式GUI,您可以在其中运行Groovy命令并访问Spring ApplicationContext GORM等

基本增删改查

尝试执行一些基本的CRUD创建读取更新删除操作

创建

要创建域类,请使用Map构造函数设置其属性并调用:

定义p: "弗雷德", : 40, lastVisit:  日期p保存

方法将使用基础的Hibernate ORM层将您的类持久化到数据库中

365bet地区365bet地区透明地添加一个隐式ID域类的属性,可用于检索

定义p人得到1)
断言 1身份

这使用得到期望数据库标识符读取的方法从数据库返回对象您还可以使用以下命令以只读状态加载对象方法

定义p阅读的人1)

在这种情况下,基础的Hibernate引擎将不会进行任何脏检查,并且该对象也不会持久化。请注意,如果您显式调用方法,然后将对象放回读写状态

此外,您还可以使用来加载实例的代理加载方法

定义p人员负荷1)

直到调用getId以外的方法,然后再初始化代理实例或如果找不到指定ID的记录,则引发异常,这不会导致数据库访问。

更新资料

要更新实例,请更改一些属性,然后调用再次

定义p人得到1p名"鲍勃"p保存

删除

要删除实例,请使用方法

定义p人得到1p删除

进一步阅读GORM

有关使用GORM的更多信息,请参见专用文件用于GORM项目