次の(設計が不十分?)表があります。
inputs:
keyword_id serial not null,
group_name string not null,
banned_term string not null
キーワード ID が主キーです。group_name ごとに多くの禁止用語があります。データは次のようになります。
keyword_id | group_name | banned_term
1 | incentivization | free money
2 | inaccuracy | we're number one
3 | incentivization | win a free ipod!
結合テーブルはなく、group_name は独自のエンティティではありません。次のようなドメイン オブジェクトが必要です。
class BannedTermGroup {
Integer id;
String group_name;
Set<String> banned_terms;
// ... various getters and setters
}
グループ名と禁止用語の間のこの 1 対多の関係に関する唯一の例はすべて、何らかの結合列または結合テーブルを含みますが、group_name は常に他のエンティティの一部になります。ここではどちらも当てはまりません。これは Hibernate を使用してマップできますか?