WEB开发网
开发学院软件开发Java Google App Engine for Java,第 3 部分: 持久性和... 阅读

Google App Engine for Java,第 3 部分: 持久性和关系

 2009-09-17 00:00:00 来源:WEB开发网   
核心提示: 关系的问题App Engine for Java 目前的预览版的另外一个缺点是它对关系的处理,为了创建关系,Google App Engine for Java,第 3 部分: 持久性和关系(3),现在您必须对 JDO 使用 App Engine for Java 特有的扩展,假设键是在 Big

关系的问题

App Engine for Java 目前的预览版的另外一个缺点是它对关系的处理。为了创建关系,现在您必须对 JDO 使用 App Engine for Java 特有的扩展。假设键是在 BigTable 的工件的基础上生成 — 也就是说,“主键” 将父对象键编码到其所有子键中 — 您将不得不在一个非关系数据库中管理数据。另外一个限制是持久化数据。如果您使用非标准的 AppEngine for Java Key

类,事情将会变得复杂。首先,把模型移植到 RDBMS 时,如何使用非标准 Key

? 其次,由于无法使用 GWT 引擎转换 Key

类,因此,任何使用这个类的模型对象都无法被作为 GWT 应用程序的一部分进行使用。

当然,撰写这篇文章时,Google App Engine for Java 还是纯粹的预览模式,没有到发布的最佳时间。学习 JDO 中的关系文档(很少,而且包含一些不完整的示例)时,这点就变得显而易见了。

App Engine for Java 开发包提供了一系列的示例程序。许多示例都使用 JDO,没有一个使用 JPA。这些示例中没有一个示例(包括一个名为 jdoexamples 的示例)演示了关系,即使是简单的关系。相反,所有的示例都只使用一个对象把数据保存到数据存储中。Google App Engine for Java 讨论组 充斥着有关如何使简单关系起作用的问题,但却鲜有答案。很显然,有些开发人员有办法使其起作用,但是实现起来都很困难,而且遇到了一些复杂情况。

App Engine for Java 中的关系的底线是,无需从 JDO 或 JPA 获得大量支持就能够管理它们。 Google 的 BigTable 是一种已经经过检验的技术,可用来生成可伸缩的应用程序,然而,您还可以在此基础上进行构建。在 BigTable 上进行构建,您就不必处理还不完善的 API 层面。另一方面,您只要处理一个较低级别的 API。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Google App Engine

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接