gpt4 book ai didi

java - Google应用程序引擎为不同实体生成唯一的ID

转载 作者:行者123 更新时间:2023-12-01 18:41:55 26 4
gpt4 key购买 nike

我的 Google App Engine 数据存储中有两个使用 Java、Objectify 4 的实体,我有一个要求,其中这两个实体的自动生成的 id 应该是唯一的,也就是说,第一个实体的 id 永远不会有条目对于第二个实体。

如何确保不同实体生成的 ID 不会重复。 ?

在 JPA 中,如果我对 ids 使用生成值策略 AUTO,在数据库级别,将维护唯一值,GAE 是否也遵循相同的操作?我目前正在使用 Objectify4 进行持久化。

JPA 引用号:AUTO strategy

最佳答案

如果您的实体相同kind (= JPA 中的同一类),然后 auto-generated IDs保证是唯一的。

更新:OP 澄清他需要跨不同实体类型的唯一 ID。

您将需要使用手动生成的 ID - 使用 allocateIds(kind, num)方法,您对所有内容使用虚构的kind。使用 num of 1 仅生成一个 ID。

long uniqueId = DatastoreService.allocateIds("MyUniqueUserKind", 1).getStart().getId();

只要您始终使用相同的种类,以这种方式生成的所有 ID 就始终是唯一的,在本例中是“MyUniqueUserKind”

关于java - Google应用程序引擎为不同实体生成唯一的ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19634901/

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