2

我试图从Google Datastore API中理解一行:

JDO 使用 Java 类上的注释来描述类的实例如何作为实体存储在数据存储中,以及在从数据存储中检索实体时如何将实体重新创建为实例。

我敢肯定,对于大多数人来说,这是一个非常基本的问题。但我不明白为什么类对象需要存储在数据库中,然后再检索。为什么不改为定义您希望应用程序的数据存储看起来像什么,并根据需要仅存储类属性中的相关数据,而不是存储整个类或总是重复存储相同的属性?类的实例包含各种信息,在我看来,这些信息不需要在数据库中——方法、类变量、实例变量——我们在源代码中编写这些东西,我们不需要重现它在数据库中 - 我们只需要存储该类正在操作的某些相关数据。对?也许我不明白引用的陈述是什么意思。

4

2 回答 2

2

为什么不改为定义您希望应用程序的数据存储看起来像什么,并根据需要仅存储类属性中的相关数据,而不是存储整个类或总是重复存储相同的属性?

这正是您引用的实际含义:

JDO 使用 Java 类上的注释来描述类的实例如何作为实体存储在数据存储中,以及在从数据存储中检索实体时如何将实体重新创建为实例。

您使用注释说“存储字段 X”、“忽略字段 Y”等。

于 2009-04-30T20:20:17.193 回答
2

Google Datastore 不是标准的关系数据库,如 SQL Server 或 Oracle。实体是根据它们的定义存储的,而不是传统的首先创建模式,然后将对象映射到模式的方法。我不认为私有成员或方法与数据一起存储,所以它不像整个对象,包括方法,被序列化到数据存储中。

于 2009-04-30T20:20:32.107 回答