grails-orm相关内容

Grails hasOne vs.belongsTo

要在 Grails 中创建一对一的关系,我可以这样做: class Person {静态 hasOne = [地址:地址]} 在这种情况下,地址表具有指向其人的密钥.我也可以这样做: 类地址{静态属于 = [人:人]} 这给出了相同的结果. 我使用 hasOne 和 belongsTo 的两个示例有什么区别? 解决方案 hasOne 表示存在双向的一对一关系,子表有父表的外键 ..
发布时间:2021-12-22 21:01:10 其他开发

使用 GORM 无需再次访问数据库即可获取一对多加载对象的 ID

我必须 GORM 域,A &B、与数据库表有关.A 与 B 是一对多的关系.因此,这些类看起来类似于: class A {乙长ID}B类{长ID} 当我检索 A 的实例时,会从数据库中检索 B 的相应实例的 ID.但是,当我尝试通过以下方式访问该 ID 时: A a = A.get(11)多头出价 = a.b.id 整个对象从数据库加载.在某些情况下,我只想要 B 的 ID(已经被检索到) ..
发布时间:2021-12-22 21:00:27 其他开发

GORM:不可知地映射大文本字段数据库

我有一个 Grails 应用程序,可以在 SQL Server 或 Oracle 后端运行.我使用 GORM 作为 ORM. 我想以支持两种数据库类型的方式映射一个大文本字段.在我的 Grails 域类中,我有类似的东西: class Note {字符串内容静态约束 = {内容可空:假,空白:假}} 然后我声明如下所示的数据库表: -- oracle创建表格注释(id NUMBER(1 ..
发布时间:2021-12-22 20:57:19 其他开发

如何在 Grails 中设计领域类?

鉴于这些功能要求: 用户管理 管理员 图书管理员 借款人 *用户可以选择通过 OpenID 登录. 物业管理 预订 备忘录 通函 许可 通常,我会在 Java 中实现这些: 接口用户{}图书管理员类实现 User {}类管理员实现用户{}类 Borrower 实现 User {}class OpenID {}//所有用户都有一个OpenID属性(如果 ..
发布时间:2021-12-22 20:56:24 其他开发

Grails:创建动态 SQL 连接

对于我的应用程序,我需要在运行时动态数据库连接.我知道,有多种方法可以创建多个数据源,但我认为它们并不是动态的.场景: 用户可以输入数据库凭据并连接到远程数据库以将单行和表导入其他数据库.为此,我需要动态连接到远程数据库. 我已经尝试在服务中做到这一点,就像他们在 如果我在 grails 中使用 groovy sql 类,它是否使用 grails 连接池? 注意:在这种情况下 G ..
发布时间:2021-12-22 20:56:00 其他开发

grails 限制表创建

我想在有限的基础上使用 Grails 功能来创建/更新数据库表.具体来说,我希望 Grails 管理一些表,但不是全部. 有没有办法限制由 Grails 管理的表,或者它是全有或全无的提议? 解决方案 一般来说,Grails 使用 Hibernate 的 HBM2DDL 功能,所以要么全有要么全无.但是您可以使用自定义配置子类拦截该过程.这是一个扩展 GrailsAnnotation ..
发布时间:2021-12-22 20:55:25 其他开发

删除项目后,hasMany 关联列表中为空

有域对象: class Book {列表图片静态 hasMany = [图片:图片]静态映射 = {图片懒惰:假,缓存:'非严格读写'}} 有时,通过代码从列表中删除图片后,它会在图片列表中生成空项. ..书.刷新()def pic = Picture.get(params.id)subject.removeFromPictures(pic)主题.save() 看起来,GORM 没有更新 ..
发布时间:2021-12-22 20:55:18 其他开发

Grails:在许多表上的投影?

我在 Grails 中的投影有一些问题.你能帮我审查它们并为我提出解决方案吗? 我想查询许多表上的数据,这些表在它们两个的某些属性上具有多对一关系和投影.例如: class Person {内部编号字符串名称字符串地址静态 hasMany = [汽车:汽车]}类汽车{内部编号弦品牌长价个人所有者静态belongsTo = [所有者:人]} 那么,我如何仅使用一个带有标准的查询(应用投影) ..
发布时间:2021-12-22 20:52:47 其他开发

grails 中 hasMany 关系的选择性深度渲染

对于以下领域模型: class Route {字符串名称静态 hasMany = [checkPoints:CheckPoint]静态belongsTo = [someBigObject:SomeBigObject]静态映射 = {检查点懒惰:假}} 我需要从 Web 服务以 JSON 形式返回特定的 Route.我希望这个 JSON 包含所有 checkPoints 但没有其他组合(即:so ..
发布时间:2021-12-22 20:52:11 其他开发

Grails 域类与自身的关系

我需要一种方法来让域类拥有许多自身.换句话说,存在父子关系.我正在处理的表有数据,然后是一个名为“parent_id"的列.如果任何项设置了 parent_id,则它是该元素的子项. Grails 中有没有什么方法可以告诉 hasMany 要查看哪个字段以供参考? 解决方案 这是您正在寻找的示例(它是我正在运行的片段代码,它生成列 parent_id).我认为您不需要 SortedS ..
发布时间:2021-12-22 20:49:47 其他开发

Grails 2.x createCriteria 'or' 不适用于嵌套关联

似乎在 Grails 2.x 中,如果您有域类关联,并且您尝试在该关系上使用 or 运行 createCriteria + 另一个查询,or 将忽略其他查询并仅使用嵌套关联的结果.我意识到这可能有点令人困惑,所以这里有一个例子: class 乘客 {长ID布尔值驱动}类汽车{长ID乘客 乘客布尔值正在移动静态约束 = {乘客可空:真}} 和测试: class CarIntegrationTe ..
发布时间:2021-12-22 20:49:23 其他开发

休眠/GORM:flush() 未处理集合

当我尝试保存 Member 类型的实体时,我的 Grails 应用程序中有一个集成测试失败 invitingMember.save(flush: true) 这引发了以下异常 org.hibernate.AssertionFailure:收藏[com.mycompany.facet.Facet.channels] 是未由 flush() 处理com.mycompany.member.M ..
发布时间:2021-12-22 20:46:47 Java开发

我自己在 GORM 中的 ID

我尝试更改 grails 中的标准“id": 调用 Book {字符串标识字符串标题静态映射{id 生成器:'已分配'}} 不幸的是,我很快注意到这破坏了我的引导程序.而不是 new Book (id:'some ISBN', title:'great book').save(flush:true,failOnError:true) 我不得不使用 def b = new Book(tit ..
发布时间:2021-12-22 20:46:33 其他开发

grails 中的 withTransaction 和 withSession 有什么区别?

我知道一个获取基础会话,另一个获取当前事务状态的引用;但是,它们之间有什么区别,每个用例的示例是什么? 我的需求是在一个 Service 方法块中批量保存一些记录. 解决方案 withTransaction 有点黑客,因为它允许您在任何地方进行事务性工作,但最好将您的关注点分开并完成工作在交易服务中.默认情况下,服务是事务性的,除非您添加 static transactional = ..
发布时间:2021-12-22 20:44:59 其他开发

独立使用 Grails GORM

我目前想知道如何在 Grails 框架之外独立使用 Grails 中的 Groovy ORM 层.有一个 文档条目 用于这样做,但是 ZIP 文件只链接到一个空页面.我下载了 Grails 1.2-M3,但在文档中也找不到任何内容. 有人知道当前的状态以及如何实现吗? 解决方案 AFAIK 从 Grails 1.1 开始就可以独立使用 GORM.这允许您使用 GORM 作为 ORM, ..
发布时间:2021-12-22 20:41:58 其他开发

在 Grails 中将主键 id 更改为 String 类型

我的 Grails 2.0 应用定义了一个用户域对象: class 用户 {静态映射 = {表“dt_user"列 {id 列:'user_id',生成器:'assigned',类型:'string'}} 当我尝试在我的 BootStrap 文件中保存一个新用户时: def user = new User(id: "smith").save(failOnError:true) 我收到以下错 ..
发布时间:2021-12-22 20:41:36 其他开发

Grails 中同一个域类的多个 hasMany 关系

我正在使用 Grails,并且我有一个域模型,其中多个 hasMany 属性指向同一个域类,如下所示: static hasMany = [ 帖子:发帖,喜欢:发帖,不喜欢:发帖] 我遇到的问题是,当我将某些内容添加到帖子列表时,它也会以某种方式将其添加到喜欢和不喜欢列表中.至少,当我遍历每个列表时,它是这样的. 我认为问题在于我的 Post 域中也有以下关系: 静态belongsTo ..
发布时间:2021-12-22 20:41:05 其他开发