オブジェクトのリストをQuestion含むクラスがありAnswerます。私のPOJOでは、これを質問クラスで次のように表します。
@ForeignCollectionField
private ForeignCollection<Answer> answers;
私のAnswerクラスでは、この関係は次のように宣言されています。
@DatabaseField(foreign = true, canBeNull=false)
private Question question;
データベースにまだ永続化されていないAnswerを参照するを永続化しようとすると、ORMliteが例外をスローすることを期待していました。Questionただし、これは発生していないようです。Answer参照されているオブジェクトを保存せずに、オブジェクトを好きなように永続化できQuestionます。Answerを使用してデータベースを調べ、質問が保存されずに保存されていることを確認しましたSQLliteBrowser。これにより、プログラムを再起動すると、データベースに存在しない質問を参照する回答が含まれるようになるため、データの整合性が失われます。
これを強制する方法はありますか?Hibernateでの私の経験では、最初に参照された「親」オブジェクトを保存せずに子オブジェクトを保存することはできません。