1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | @Data @Entity @Table(name = "employees") public class Employee extends Parent { // other attributes @ManyToMany(cascade = {CascadeType.ALL}) @JoinTable( name = "employees_projects", joinColumns = {@JoinColumn(name = "employee_id")}, inverseJoinColumns = {@JoinColumn(name = "project_id")} ) Set<Project> projects = new HashSet<Project>(); } @Data @Entity @Table(name = "projects") public class Project extends Parent{ // other attributes @ManyToMany(mappedBy = "projects", cascade = {CascadeType.ALL}) private Set<Employee> employees = new HashSet<Employee>(); } |