我有一个与持久性相关的 java-ee 代码,我需要重写它以使应用程序在 Google App Engine 及其数据存储上运行。当我使用 java-ee 持久性提供程序时,我会使用我的 IDE 生成持久性实体,并将它们保持原样,以防我需要重新生成它们。但是,为应用程序引擎存储自动生成实体类是不可能的,我想知道是否有充分的理由让我保持实体类干净并且不使用与持久性没有直接关系的字段和方法。如果重要的话,我会使用 objectify 作为持久性提供者。
这是一个例子:
public class Dog {
@Id Long id;
@Transient Integer barkCount;
public String bark() {
barkCount++;
return "woof-woof";
}
public String getAgeEstimation() {
switch(barkCount) {
case 0: return "unborn (or very lazy)";
case 10000: return "this is very old dawg";
default: return "you get the idea :)";
}
}
}