标签:
在上一次的注解案例里面配置注解的同时,也添加了一对多(@OneToMany)的关系在里面。
本次将补充上次的缺失:其他三种关联方式的配置。
为了简化配置的复杂度 在此案例中Emp和Dept并不是唯一的两个类,其他的我都会在适当的时机点明。
例如配置一对一关联的时候再来使用这两个类就不太合适了 。
@OneToOne的配置 参与的类有Student和Card(学生与身份证是一对一的关系)
Student
1 package cn.happy.entity; 2 3 import javax.persistence.Column; 4 import javax.persistence.Entity; 5 import javax.persistence.Id; 6 import javax.persistence.OneToOne; 7 import javax.persistence.Table; 8 @Entity 9 @Table(name="Card") 10 public class IdCard { 11 @Id 12 @Column(length=18) 13 private String cid; 14 @Column(name="cname") 15 private String cname; 16 @OneToOne(mappedBy="craid") 17 private Student stu; 18 }
Card
1 package cn.happy.entity; 2 3 import javax.persistence.CascadeType; 4 import javax.persistence.Column; 5 import javax.persistence.Entity; 6 import javax.persistence.GeneratedValue; 7 import javax.persistence.Id; 8 import javax.persistence.JoinColumn; 9 import javax.persistence.OneToOne; 10 import javax.persistence.Table; 11 12 import org.hibernate.annotations.CollectionId; 13 @Entity 14 @Table(name="Student") 15 public class Student { 16 @Id 17 @GeneratedValue 18 private Integer id; 19 @Column(name="name") 20 private String name; 21 @OneToOne(cascade={CascadeType.ALL}) 22 @JoinColumn(name="cid") 23 private Card card; 24 25 }
@ManyToOne的配置
标签:
原文地址:http://www.cnblogs.com/john69-/p/5799527.html