Hibernate多对多关系

来源:互联网 发布:qq企业邮箱域名 编辑:程序博客网 时间:2024/05/21 12:43

教师和课程例子:

采用中间表实现多对多的关联

教师POJO:

@Entity@Table(name = "t_teacher", schema = "sms")public class Teacher{    @Id    @Column(name = "tid")    private int tid;    @Basic    @Column(name = "tname")    private String tname;    @OneToMany(mappedBy = "teacher")    private Collection<TeacherCourse> courses;}

课程POJO:

@Entity@Table(name = "t_course", schema = "sms")public class Course {    @Id    @Column(name = "cid")    private int cid;    @Basic    @Column(name = "cname")    private String cname;    @OneToMany(mappedBy = "course")    private Collection<TeacherCourse> teachers;}

教师and课程中间表POJO:

@Entity@Table(name = "teacher_course", schema = "sms")public class TeacherCourse {    @Id    private int id;    @ManyToOne    @JoinColumn(name = "tid", referencedColumnName = "tid")    private Teacher teacher;    @ManyToOne    @JoinColumn(name = "cid", referencedColumnName = "cid")    private Course course;}
原创粉丝点击