0

データベースファーストの休止状態の API を作成しています。

netbeans にデータベースから POJO とマッピング ファイルを生成させます。(「Hibernate マッピング ファイルとデータベースからの POJO を使用」)

データベース内の外部キーは、POJO への参照になりました。

例: クラス A にクラス B との外部キー関係がある場合、クラス A POJO は次のようになります。

Class A {
    private B b;
    private Integer idA;

    public A (B b){
        this.b = b;
    }
    //const, getter, setter

}

新しい A オブジェクトを作成してデータベースに挿入したい場合 ( Hibernate.session.persist(a) を使用) すると、問題が発生します。

Bオブジェクトも作成する必要があるようです(ただし、このBオブジェクトにはテーブルCへの外部キーなどがあります)

したがって、session.persist を使用する代わりに、hql クエリを記述して新しい A オブジェクトを挿入する必要があります。

Query q = session.createQuery(INSERT INTO A (idB) 2);
q.executeUpdate(q);

(または、hql クエリを使用すると、session.persist(a) を使用するよりも不利になりますか?)

それとも、POJO とマッピング ファイルを手動で編集して、クラス B オブジェクトの代わりにテーブル B id を含める必要がありますか?

それとも私が見落としているものがありますか?

事前に感謝します。追加情報を提供する必要がある場合は、挨拶をお知らせください

4

0 に答える 0