3

私はサイト全体を検索しましたが、jdoで多対1の関係を構築する方法の例は1つもありません。 https://developers.google.com/appengine/docs/java/datastore/jdo/relationships

しかし、私はそれを行う方法を見つけることができませんでした。

このDBがあるとしましょう:

Cars(CarID,OwnerID,...)
Owner(OwnerID,...)

そして、新しい車の新しいエンティティを作成したいのですが、どうすれば作成できますか?

所有者が既にデータベースにいる場合、所有者のために別のエンティティを作成したくありませんが、そうでない場合は、新しい所有者を作成したいと思います。

対処方法に関するサンプルコードまたはブログリンクをありがとう。

編集:あなたはその双方向の関係を考えているようです。だから私はあなたが私をよく理解していないと思います。車と所有者について話しているのではなく、ジャンルと歌について話しているとしましょう

ジャンル~歌は知らなくていい!曲は彼のジャンルを知る必要があります!

私のクラスは次のとおりです。

public class Genre {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
long id;
@Persistent
String genre;

} と:

public class Song{
long id;
    @Join(name="GENRE_JOIN")
Genre genre;

}

前もって感謝します!

4

2 に答える 2

0
class Owner {
    @Persistent(mappedBy = "owner")
    private List<Car> cars;
}

class Car {
    @Persistent
    private Owner owner;
}

Car car = new Car();
//search for the owner.
car.setOwner(owner);
于 2012-12-05T06:37:44.713 に答える
0

すべての GAE ドキュメントは、詳細については DataNucleus JDO ドキュメントを参照すると述べているため、すべての例を提供する必要がある理由がわかりません。あなたの関係は一見(あなたが定義したわけではありません)、所有者側では1-N BIDIR関係、車側ではN-1 BIDIR関係であるため、http://www.datanucleus.org/products/accessplatform_3_1/jdo/orm/many_to_one .html JDO 仕様にも十分な例があります。

于 2012-12-04T15:29:58.127 に答える