【问题标题】:Can a Google App-Engine Objectify entity have multiple @Id fields?Google App-Engine Objectify 实体可以有多个@Id 字段吗?
【发布时间】:2013-02-06 02:25:54
【问题描述】:

我想知道一个 Objectify 实体是否有多个 ID。

我不完全了解 @Index 的工作原理,但我想它也用于排序目的。

我有一个具有两个字段的实体,与其他字段相比,它具有唯一性,因此它们都可能是@Id,但它们小于@Index,因为它们不应该用于范围或不等式查询。

【问题讨论】:

    标签: google-app-engine google-cloud-datastore objectify


    【解决方案1】:

    不,@Entity 注释类只能有一个 @Id 字段,可以是:

    • long
    • Long
    • String

    只有Long 类型会在保存时自动生成一个值。

    您可以构建自己的对象,该对象具有toString() 表示,该表示尊重您的两个唯一字段的排序顺序。 toString() 值可用于 String 类型 @Id 字段,如

    @Id
    String myCustomId;
    

    此字段必须在保存之前设置为您的新实体。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-19
      • 1970-01-01
      • 1970-01-01
      • 2012-08-05
      • 2014-08-09
      • 1970-01-01
      • 1970-01-01
      • 2013-01-05
      相关资源
      最近更新 更多