2つのテーブルがあるとします。従業員と給与と1:Nの関係従業員)。Grails/GORMのレガシーマッピング:1つのドメインクラスと2つのテーブルが1:N関係にある
プレーンSQLでテーブルはと結合することになります。
SELECT e.id, e.name, s.salary FROM employee e, salary s WHERE s.id = e.salary_id AND e.id = 12345;
は、私はクラスに、従来のデータベース構造をマッピングしないか、以下のGORM搭載のドメインクラスを想定すると?
class Employee {
String name
int salary
}
明確化#1:私は両方のテーブルからのデータを含む唯一のドメインクラスをしたいです。したがって、別のクラスを追加することはオプションではありません。
明確化#2:私は答えを見つけようとしている質問は、「どのように私はGrailsの/ GORMを使用して1クラスに2つのテーブルをマッピングしない」だけですか?あなたがそうすることが不可能だと思うなら、質問を再記述するのではなく、あなたの答えにそのことを明確に述べてください。
2番目のクラスを持つことができないという非常に奇妙な要件です。通常、2つのテーブルを持つことはできません。この要件は、より大きな問題の症状である可能性があり、それを解決することはすべての小さな問題を一挙に解決します。理由を説明するのは良いことです。 – Chii