J'ai une enchère et une classe d'objet ayant une relation de plusieurs à plusieurs.ManyToMany alternative de relation en cascade
public class Auction implements BaseEntity,Comparable<Auction>{
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name = "auction_id")
private Long auctionId;
@Basic(optional = false)
@Column(name = "auction_name")
private String auctionName;
@ManyToMany
@JoinTable(name = "auction_items", joinColumns = {
@JoinColumn(name = "auction_id", referencedColumnName = "auction_id")}, inverseJoinColumns = {
@JoinColumn(name = "item_id", referencedColumnName = "item_id")})
private List<Item> itemList;
.....}
public class Item implements BaseEntity{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="item_id")
private long itemId;
@Column(name="item_name")
private String itemName;
public class Item implements BaseEntity{
private static final long serialVersionUID = 1L;
@ManyToMany
@JoinTable(name="auction_items",joinColumns={@JoinColumn(name="item_id")},inverseJoinColumns={@JoinColumn(name="auction_id")})
private List<Auction> auctionList;
}
Lors de la création d'une nouvelle vente aux enchères, parfois je veux choisir un élément existant et associé avec une nouvelle vente aux enchères et parfois, un nouvel élément à créer.
Si j'utilise (cascade=CascadeType.ALL
) relation comme indiqué
@ManyToMany(cascade=CascadeType.ALL)
@JoinTable(name = "auction_items", joinColumns = {
@JoinColumn(name = "auction_id", referencedColumnName = "auction_id")}, inverseJoinColumns = {
@JoinColumn(name = "item_id", referencedColumnName = "item_id")})
private List<Item> itemList;
Alors, je ne serai pas en mesure d'associer élément existant avec une nouvelle instance d'enchères et si je ne l'utilise pas cette relation en cascade alors je vais ne pas être en mesure de créer un nouvel élément avec une nouvelle enchère.
Quelqu'un peut-il donner des suggestions sur toute caractéristique du printemps qui offre une telle flexibilité?
Mais les conditions sont quelque chose comme ça, j'ai besoin de beaucoup de relations entre mes entités, alors je peux avoir une solution qui permette de faire les deux, en attachant parfois un objet existant avec une nouvelle enchère article avec nouvelle vente aux enchères (comme en cascade). – Aakanksha
Bien sûr. En instanciant simplement en silence. Dans mon exemple, vous instanciez "Car" pour chaque enchère mais gardez le nom "Car" au lieu de quelque chose de plus spécifique. Vous avez alors un objet différent dans chaque enchère mais comme il a le même nom, personne ne le saura jamais. –