現在、Seam フレームワークを使用しています。また、エンティティに注釈を付ける際に少し問題があります。Tag エンティティの子を持つ Deal エンティティがあります。エンティティに次のように注釈を付けました。
@Entity
public class Deal implements Serializable {
private Tag tag;
@ManyToOne
public Tag getTag() {
return tag;
}
public void setTag(Tag tag) {
this.tag = tag;
}
}
タグエンティティは次のようになります。
@Entity
@Table(uniqueConstraints = { @UniqueConstraint(columnNames = "label") })
public class Tag implements Serializable {
private String label;
public void setLabel(String tagLabel) {
this.label = tagLabel;
}
public String getLabel() {
return label;
}
}
ユースケースは次のとおりです。取引をタグ付けするためのデフォルト値があります。ユーザーは、オートコンプリーターの入力ボックスでタグを検索します。一致しない場合は、独自の無料タグを入力します。ディール エンティティを永続化する場合、DB にタグが保存されていない場合はタグ エンティティが永続化されます。それ以外の場合は、保存されたタグ エンティティを取引エンティティに参照します。
このユース ケースに適合するエンティティに注釈を付けることができますか? それともビジネスロジックのすべてですか?