JDOに関するGAEドキュメントを読みましたが、私のシナリオに合った例が見つかりませんでした。私を助けてください。
と のような 2 つの JDO クラスがA
ありB
ます。"A"
クラスは と 1 対多の関係にあり"B"
ます。この関係は、依存関係もありません。クラス"A"
であり、"B"
次の構造を持っています(簡単にするために、注釈を使用していません)
class A {
private String name;
private String id; // primary Key
private List<B> b;
..... getter setter
}
class B {
private Key key; // primary Key
private String id; // this is the attribute of the Class A
private String someData;
}
私のシナリオは、最初にクラス"A"
オブジェクトを 1 つずつ作成し、Persistent Manager を使用してデータ ストアに保存するというものです。この保存用の " List<B> b
" は null になります。bcz にはデータがありません。
"id"
その後、Class " の属性A"
用と " " 属性用の 2 つのフィールドを持つフォームを提供するとしますsomeData
。このユーザー"id"
では、保存されている class のオブジェクトの 1 つを提供し"A"
ます。ユーザーが結果を送信するときは、作成する必要があります。クラス"B"
オブジェクトを作成してデータ ストアに保存しlist of B
、対応する Class"A"
オブジェクトに追加する必要があります。
ここで私の質問は、この JDO クラスの 1 対多の関係を維持するためにどのようなアプローチを使用する必要があるかということです。最初にフォームで提供されたに"A"
基づいてクラスオブジェクトを取得する必要があり、オブジェクトを取得した後、クラスオブジェクトを取得してリストにクラスオブジェクトを追加し、クラスオブジェクトを保存します(オブジェクトが PM に添付されると、自動的に保存されます) ) または他のアプローチは、クラスオブジェクトを作成し、PM を使用してデータ ストアに保存することです。"id"
"list of B"
"B"
"A"
"B"
クラスオブジェクトを作成B
してデータストアに保存するだけで、関係が維持される場合。クラスオブジェクトを取得するときの簡単な言葉は、クラスA
オブジェクトには"list of B"
クラス「A」オブジェクトにリンクされたすべてのオブジェクトがあります(Bクラスにはクラスの主キーである属性があるためA
)
ありがとう