0

これで、Geoarea、Building、Server のようなスライドショー コンテナをセットアップしました。

1 つのスーパークラスからマップされた異なるエンティティで。

次に直面する問題は、これらのコンテナーの内容をいずれかのコンテナーに関連付けられるようにしたいということです...

それが、私が最初に 1 つのコンテナー エンティティを持ち、INT フラグを使用してコンテナー タイプを設定することを考えていた理由ですが、OO に関してはスムーズでも正しくもないと思います。

もちろん、可能なコンテナごとにエンティティ「コンテンツ」に FK フィールドを設定し、それらを null 可能に設定して、そのうちの 1 つだけを使用することもできますが、ここでわだち掘れになっているように感じます。 ... コンテナと関連するコンテンツのフェッチをできるだけ簡単にしたい...

各コンテンツは 1 つのコンテナーにのみ関連しているため、複数のコンテナーを使用しない場合に 3 つの FK フィールドを使用するのはばかげているように感じます...

4

1 に答える 1

0

2 つの解決策があります。1 つ目は Inheritance : Inheritance Mappingを使用することですが、データベースに冗長性が生じます。

2 番目の解決策は、Mother エンティティに 3 つではなく、Child エンティティに FK を追加することです。これにより、共通データをマザー スーパークラスに格納します。

于 2012-08-02T19:46:27.313 に答える