我有两个 pojo 学生和部门。 关系是,一个类有很多学生。 (双向)
@Entity
@Table(name="section")
public class Section {
@Id
@GeneratedValue
private int sectionId;
private String sectionName;
private int maxStudent;
@OneToMany(cascade=CascadeType.PERSIST)
@JoinTable(name="student_section" , inverseJoinColumns={@JoinColumn(name="student_id")},joinColumns={@JoinColumn(name="section_id")})
private Set<Student> student = new HashSet<Student>(0);
public Set<Student> getStudent() {
return student;
}
public void setStudent(Set<Student> student) {
this.student = student;
}
和
@Entity
@Table(name="student")
public class Student {
@Id
@GeneratedValue
private int studentId;
private String studentName;
private int studentAge;
@OneToOne(cascade=CascadeType.PERSIST)
@JoinTable(name="student_section" , joinColumns={@JoinColumn(name="student_id")},inverseJoinColumns={@JoinColumn(name="section_id")})
private Section section;
正在填充学生和部分表,但未填充连接表“student_section”。 请提供解决方案。 提前致谢。
最佳答案
您可以尝试使用以下映射吗:
@OneToMany(cascade=CascadeType.PERSIST)
@JoinTable(name="student_section" , inverseJoinColumns={@JoinColumn(name="student_id")},joinColumns={@JoinColumn(name="section_id")})
private Set<Student> student
在Section类中以及在Student类中:
@ManytoOne(cascade=CascadeType.ALL)
private Section section;
关于java - Hibernate 不会在@onetomany 双向关系中使用的连接表中插入行。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31676744/