私のアプリでは、 と が異なるUser
ためItem
、各ユーザーは多くのアイテムを選択できます。
チュートリアルでは、@ManyToMany
アノテーションについて学びました。
@Entity
public class Item extends Model {
...
@ManyToMany(cascade = CascadeType.REMOVE)
public List<User> users = new ArrayList<User>();
しかし、私が考えることができる 2 番目のオプションは、日付や時刻などの追加情報を追加できるように、ユーザーとアイテムの関係に対して別のクラスを定義することです。
@Entity
public class ItemUserRel extends Model {
@Id
public Long id;
public User user;
public Item item;
//additional information
public Date date;
...
両方のオプションのどちらがより良い設計で、その理由は?