私はPlayフレームワークとyml表記法が新しく、Hibernateの基本を知っています。 .ymlファイルを使用していくつかのテストデータを設定しようとしています。私はいくつかのQuestionオブジェクトと、同じCompetitionオブジェクトを参照するActiveCompetitionオブジェクトを定義しようとします。私は動作しますが、Hibernateは* mycompetition 4回を保存しているようですyml表記で定義されたオブジェクトの重複
ActiveCompetition(1): &myactivecompetition
activeCompetition: &mycompetition
name: Name of the competition
Question(11):
title: Title 1
competition: *mycompetition
Question(12):
title: Title 2
competition: *mycompetition
Question(13):
title: Title 3
competition: *mycompetition
:私の.ymlファイルには、この(私は関係ありません何を考えて削除した)のように見えます。 Javaの豆で
次のようにのjavax.persistenceの属性が設定されています
@Entity
@Transactional
public class ActiveCompetition extends Model {
@Required
@OneToOne(cascade= CascadeType.ALL)
private Competition activeCompetition;
}
@Entity
@Transactional
public class Question extends Model {
...
@Required
@OneToOne(cascade= CascadeType.ALL)
private Competition competition;
}
は、どのように私は、Hibernateは* mycompetitionがデータベースに一度だけ保存されるべきであることを理解させるのですか? .ymlファイルにデータベースIDを書き込むべきですか?もしそうなら、私はこれをどのようにするのですか?私はすでに 'id:99'をactiveCompetitionの下に追加しようとしましたが、それは役に立ちません。
問題#2が問題でした。今それは動作します。ありがとうございました! – nturpin