gpt4 book ai didi

grails - 没有ID的Grails域保存数据

转载 作者:行者123 更新时间:2023-12-02 14:42:36 24 4
gpt4 key购买 nike

我有一个域类,其中我将id声明为字符串,并且在映射中id被映射为ROWID。我不希望该id参与插入操作。
但是,在通过域持久化时,出现如下错误:
com.bt.viewer.TCircuitDetails条目中的null id
有人可以帮忙吗:我是否需要提及数据库列的ID?
在gorm查询中,插入sql正在为id生成休眠序列,我不能使用它
对于任何列。

我可以将id分配给数据库中存在的一个主键列,但是id只采用休眠序列,因此我无法将id映射到任何列。我无法通过添加新列来更改表以容纳id值。

有什么解决方案请帮忙

谢谢..

最佳答案

您需要重写Hibernate的默认身份生成器-here是Grails文档中的相关章节,它基本上将您带到Hibernate文档。

从我的收集中,您将需要实现一个自定义IdentifierGenerator,类似于this人如何为他们的项目执行此操作。

我不知道您为什么要尝试定义自己的ID,但是以下更简单的解决方案也可能对您有用:让Grails / Hibernate将其ID存储到另一列中(例如hibernate_id),然后您可以使用id自己通过将id column: 'hibernate_id'插入mapping块来达到目的(请参阅Grails文档的链接)。但是,您将需要在所有地方使用DomainClass.findById()而不是DomainClass.get()

关于grails - 没有ID的Grails域保存数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26992051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com