代码之家  ›  专栏  ›  技术社区  ›  Riley Lark

在维护对长id的访问的同时建立实体组

  •  2
  • Riley Lark  · 技术社区  · 15 年前

    我使用appengine数据存储,我的所有实体都有长id作为它们的主密钥。我使用这些id与客户机通信,因为完整的密钥需要更多的带宽来传输。

    现在,我想形成实体组,这样我就可以在事务中执行复杂的操作,看起来 http://code.google.com/appengine/docs/java/datastore/transactions.html#Entity_Groups 我需要使用密钥或字符串编码的密钥-简单的long不是一个选项。

    我不介意为了使用键而进行一些重构,但我仍然希望避免将这些庞然大物通过网络发送出去。如何获取主键为键的实体的唯一(每种类型)长标识符?

    1 回复  |  直到 15 年前
        1
  •  3
  •   Robert Kluin    15 年前

    不必使用名称(字符串)。所有的 KeyBuilder 获取名称的方法也有获取ID(long)的对应项。

    对于传输,您只需要 Key . 一旦知道id或名称,就可以重建密钥服务器端。如果是子实体,则需要同时知道父实体和子实体的名称或id。