App Engine を介して単純な to-do API サービスを作成しようとしています。User
データ オブジェクトのセットを持つデータ オブジェクトがProject
あり、これらのProject
データ オブジェクトにはオブジェクトのセットがありTask
ます。次のコードは、それらの実装と関係についてのアイデアを提供するはずです。
@PersistenceCapable(detachable = "true")
public class User implements Serializable {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Persistent(mappedBy = "user")
private List<Project> projects;
}
@PersistenceCapable(detachable = "true")
public class Project implements Serializable {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key id;
@Persistent
private User user;
@Persistent(mappedBy = "project")
private List<Task> tasks;
}
@PersistenceCapable(detachable = "true")
public class Task implements Serializable {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key id;
@Persistent
private Project project;
}
私が User データ オブジェクトで行っていることは次のとおりです ( EntityManager
App Engine のヘルプ ページに表示されているように定義されています)。
EntityManager em = EMFService.get().createEntityManager();
try {
User dev = em.find(User.class, id);
em.remove(dev);
} finally {
em.close();
}
私がやりたいことは、オブジェクトを参照する親とのキーの組み合わせではなく、データオブジェクトに対応する長い数値であるID /キーでデータオブジェクトProject
を取得することです。Task
これらのオブジェクトは他のオブジェクトの子であるため、id 値でそれらを取得する方法がわかりませんでした。