Java 开发 2.0: 使用 Google App Engine
2009-09-09 00:00:00 来源:WEB开发网JDO 非常简单。您将创建 POJO — 老式普通 Java 对象(可以和其他 Java 对象建立联系),您通过类级别的 @PersistenceCapable 注释将其声明为具有持久能力。通过 @Persistent 注释指定要进行持久化的对象的属性。例如,我希望存储 triathlon 事件(目前而言,我将关注事件而不是与 triathlon 有关的各种结果)— 就是说,事件拥有一个名称(triathlon 的名称),可能还有一个描述(triathlon 的类型)和一个日期。目前为止,我的 JDO 看上去类似清单 2:
清单 2. 一个简单的 triathlon 事件 JDO
import java.util.Date;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.IdentityType;
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class Triathlon {
@Persistent
private Date date;
@Persistent
private String name;
@Persistent
private String description;
}
无论使用哪一种底层机制(即关系型或 Google 的 Big Table),数据持久性始终需要涉及键(key)的概念:一种为了避免数据崩溃而确保数据的不同方面具有惟一性的方法。例如,对于 triathlon,它的键可以是 triathlon 的名称。如果两个 triathlon 拥有相同的名称,那么可以将名称和日期组合起来作为键。不管您使用何种方式通过 Google App Engine 和 JDO 表示键,必须通过 @PrimaryKey 注释在 JDO 对象中指定一个键。您还可以为键的生成方式选择一些策略 — 由您或 Google 生成。我将使用 Google 生成并保持简单性:我的 triathlon 对象的键被表示为一个普通的 Java Long 对象,并且我将通过指定一个值策略 来让 Google 确定实际的值。清单 3 添加了一个主键:
更多精彩
赞助商链接