0

リース アカウント、リース、トランザクションの 3 つのテーブルがあります。各リース アカウントには N 個のリースがあり、各リースには N 個のトランザクションがあります。データベースに対して実行できるクエリは 1 つだけです - Select * from Lease Account で、このすべてのデータを N Lease Account オブジェクトとして Java にフェッチします - 各 Lease Account オブジェクトには複数の Lease オブジェクトが含まれます - 各 Lease には複数の Lease オブジェクトが含まれます

Hibernate(3.2) でこのシナリオの 1 対多のマッピング (hbm.xml) を作成する方法を教えてください。

ありがとう。

4

1 に答える 1

0

リース アカウント hbm xml で

<class name="LeaseAccounts" table="lease">

    <id name="leaseAccountsId" type="java.lang.Long" column="id" >
        <generator class="native" />
    </id>

<set name="lease" table="lease_accounts"
                    inverse="true" lazy="true" fetch="select">
                <key>
                    <column name="id" not-null="true" />
                </key>
                <one-to-many class="Lease.class" />
            </set>


</class>

同様に、リース テーブルについても記述できます。
注意: Select * がすべてのデータをロードするかどうかは、遅延初期化に依存します。遅延読み込みが true に設定されている場合、 Hibernate.initialize(your collection)を実行する必要があります

(lazy 属性は、いつ子を取得するかを hibernate に指示します。fetch 属性は、hibernate に子を取得する方法を指示します。)

于 2014-05-19T05:43:53.810 に答える