@OneToMany / @ManyToOne

Relation bi-directionnelle

@Entity
public class Movie {
 // ...
 
 /**
  CascadeType.ALL: Quand Movie sera persistée, tous les reviews le seront également en cascade
  orphanRemoval = true: Et les reviews qui n'ont aucun lien avec Movie courant seront effacés de la base
  mappedBy = "movie": Lier l'entity Movie à l'entity Review via l'attribut "movie" de cette dernière
 */
 @OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, mappedBy = "movie")
 private List<Review> reviews = new ArrayList<>();
 
 // ...
}Langage du code : PHP (php)
@Entity
public class Review {
  @ManyToOne(fetch = FetchType.LAZY) // Chargement à la demande - FetchType.EAGER par défaut pour toute association
  @JoinColumn(name = "movie_id")     // Clé étrangère
  private Movie movie;
}Langage du code : PHP (php)

Leave a Comment