码迷,mamicode.com
首页 > 其他好文 > 详细

@ManyToMany 两个表多对多关联

时间:2015-07-04 22:14:40      阅读:230      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!