gpt4 book ai didi

java - 来自已实例化但未存储的实体的访问 key [objectify] [@prepersist]

转载 作者:行者123 更新时间:2023-12-01 15:43:47 25 4
gpt4 key购买 nike

我编写了一个 @PrePersist 方法,该方法在保留我的 User 对象之前调用。该方法的目的是为用户进行一种预订,因此其他人无法获取他的电子邮件地址。因此,当用户即将被保留时,我说,“为用户#xyz 创建一个 EmailReservation。”

我的麻烦是当用户之前没有被持久化时获取#xyz。 id 为 null,但我无法使用 DatastoreService.allocateIds,因为代表我的用户的实体已经创建。我确实可以访问该实体,但 getKey() 返回一个带有 null id 的键 - 它尚未决定其 id 是什么。

所以,我希望以下其中一项是可能的:

  1. 找出实体在持久化时将拥有的 ID
  2. 在持久化之前为已创建的实体指定一个特定 ID。

有什么想法吗?

最佳答案

没有办法知道实体在持久化时将拥有什么 ID;唯一的方法是使用 allocateIds。

您必须在创建 User 对象之前生成 ID,将其传入,或者在将实体写入数据存储区后进行工作。

关于java - 来自已实例化但未存储的实体的访问 key [objectify] [@prepersist],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7541896/

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