У меня есть объекты Project и Employee, которые имеют отношение ManyToMany, как показано ниже.
@Entity
public class Project {
@Id @GeneratedValue
private int projectId;
private String projectName;
// has some additional columns
@ManyToMany(mappedBy = "projects")
private List<Employee> emp = new ArrayList<Employee> ();
....
.....
}
@Entity
public class Employee {
@Id @GeneratedValue
private int id;
private String firstName;
private String lastName;
@ManyToMany(cascade=CascadeType.ALL)
List<Project> projects = new ArrayList<Project> ();
....
....
}
Когда я использую вышеуказанные объекты, JPA создает таблицу mppping «Employee_Project», как показано ниже.
create table Employee_Project (emp_id integer not null, projects_projectId integer not null)
Мой вопрос: всякий раз, когда добавляется новый сотрудник, я хочу обновить только таблицу сотрудников и таблицу сопоставления Employee_Project, предположим, что я знаю идентификатор проекта, с которым я хотел бы сопоставить этого сотрудника. (не касаясь таблицы/сущности проекта, я имею в виду, почему я должен предоставлять полный объект проекта, сохраняя при этом только сущность сотрудника, как я могу сделать это через jpa?)