(括弧内の暴言:) 私は Hibernate の初心者で、SQL で 15 秒で記述できる単純な結合のオーバーヘッドに少し不満を感じています。(暴言終了)
したがって、状況は次のとおりです。同じ複合主キーを含む 2 つのテーブルがあります。両方のテーブルの列を「ID」と「バージョン」と呼びましょう。両方のテーブルから特定の ID/バージョンに関するデータが必要なので、
select a.xxx, b.yyy
from tableA a, tableB b
where a.ID = b.ID
and a.Version = b.Version
and .....
悪いテーブルのデザインですが、私の手にはありません。
Hibernate では、私のオンライン調査では、テーブルで共有される別の複合キー クラスを作成し、A オブジェクトに B オブジェクトを含め、A の hbm ファイルでそれらの間を 1 対 1 でマッピングすることを提案しています。
私のプロジェクトでは、すべての Hibernate データ オブジェクトが hbm ファイルで生成され、同じ場所に配置されています。したがって、hbm ファイルを使用してこの複合キー オブジェクトを作成し、その兄弟と共に保存できるかどうかを知りたいです。問題は、特定のテーブルにマップされないことです (または、2 つのテーブルにマップされると言えます)。この複合キー クラスを hbm ファイルで作成できるかどうか、また作成することが望ましいかどうかを判断しようとしています。私はこれについて間違った方法で進んでいますか?
前もって感謝します。