我的理解是,使用 objectify 时,您可以通过以下两种方式之一生成数据存储 key :
为对象指定一个唯一 ID,该 ID 将用于生成数据存储区键(通过注释 @Id 分配给数据成员的唯一 ID)
不要指定唯一 ID,因此将自动生成数据存储键(数据成员上的注释 @Id 仍然存在,但没有为其分配任何内容)
使用选项 1,为了加载指定的实体,我们首先使用 Key.create(SomeEntity.class, uniqueID) 获取一个 key ,其中 uniqueID 是唯一的。
如果我决定使用选项 2,如果我让数据存储区自动生成 key ,我该如何加载所需的实体?
最佳答案
还有其他参数吗?如果您创建一个对象而不决定键,但提供(例如)城市、用户名、电子邮件,则您可以按城市、用户名、电子邮件进行搜索。一旦你有了它,你就拥有了对象。如果需要,您可以从那里获取对象的 key 。
关于java - 自动生成 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26682261/