首页 > 其他 > 详细

@ManyToMany 两个表多对多关联

时间:2015-07-04 22:13:57      阅读:330      评论:0      收藏:0      [点我收藏+]

两个表属于多对多关系 如 Teacher <=> Student

表teacher 主键 id

表student 主键id

中间关联表 teacher_student 两个字段 t_id 和 s_id

 

@Entity

Student 设置多对多

    @ManyToMany(cascade = CascadeType.PERSIST, fetch=FetchType.LAZY)
    @JoinTable(name="teacher_student",joinColumns={@JoinColumn(name="s_id")},inverseJoinColumns={@JoinColumn(name="t_id")})
    private Set<Teacher> teachers;

 

Teacher 设置多对多

    @ManyToMany(cascade = CascadeType.PERSIST, fetch=FetchType.LAZY)
    @JoinTable(name="teacher_student",joinColumns={@JoinColumn(name="t_id")},inverseJoinColumns={@JoinColumn(name="s_id")})
    private Set<Student> students;

 

1、关系两边都作为主控;

2、joinColumns中@JoinColumn(name="t_id") 其中t_id为JoinTable 中的外键,

由于 Student 和Teacher 的主键都为id 这边就省略referencedColumnName="id"

 

@ManyToMany 两个表多对多关联

原文:http://www.cnblogs.com/rubekid/p/4621286.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!