Hibernate关系映射(3)_一对一单向主键关联
2010-10-16 20:25
477 查看
一.Annotation方式:
在Husband.java中持有Wife的引用,Wife.java中没有Husband的引用(单向主键关联)
[b]二.XML方式:[/b]
Student与StuIdCard是一对一关系,StuIdCard.java中持有Student引用,Student.java中没有StuIdCard的引用(单向主键关联)
在Student.hbm.xml中配置映射关系:
在StuIdCard.hbm.xml中配置映射关系:
在Husband.java中持有Wife的引用,Wife.java中没有Husband的引用(单向主键关联)
/* * Hunsband.java */ @Entity public class Husband { private int id; private String name; private Wife wife; @Id @GeneratedValue public int getId() { return id; } public String getName() { return name; } @OneToOne @PrimaryKeyJoinColumn public Wife getWife() { return wife; } public void setId(int id) { this.id = id; } public void setName(String name) { this.name = name; } public void setWife(Wife wife) { this.wife = wife; } }
/* * Wife.java */ @Entity public class Wife { private int id; private String name; @Id @GeneratedValue public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
[b]二.XML方式:[/b]
Student与StuIdCard是一对一关系,StuIdCard.java中持有Student引用,Student.java中没有StuIdCard的引用(单向主键关联)
package com.szy.hibernate.model; /* * Student.java */ public class Student { private int id; private String name; private int age; private String sex; private boolean good; public boolean isGood() { return good; } public void setGood(boolean good) { this.good = good; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } }
package com.szy.hibernate.model; /* * StuIdCard.java */ public class StuIdCard { private int id; private String num; private Student student; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getNum() { return num; } public void setNum(String num) { this.num = num; } public Student getStudent() { return student; } public void setStudent(Student student) { this.student = student; } }
在Student.hbm.xml中配置映射关系:
<hibernate-mapping> <class name="com.szy.hibernate.model.Student" dynamic-update="true"> <id name="id"> <generator class="native"></generator> </id> <property name="name"></property> <property name="age" /> <property name="sex" /> <property name="good" type="yes_no"></property> </class> </hibernate-mapping>
在StuIdCard.hbm.xml中配置映射关系:
<hibernate-mapping> <class name="com.szy.hibernate.model.StuIdCard" dynamic-update="true"> <id name="id"> <generator class="native"></generator> </id> <property name="num"></property> <one-to-one name="student" constrained="true"></one-to-one> </class> </hibernate-mapping>
相关文章推荐
- Hibernate关系映射(5)_一对一单向联合主键关联
- Hibernate实体关系映射:单向主键一对一关联
- Hibernate之对象关系映射02一对一单向主键关联
- Hibernate关系映射(4)_一对一双向主键关联
- 新手上路之Hibernate(四):单向一对一关联映射(主键、唯一外键关联)
- Hibernate关系映射 一对一双向外键关联@OneToOne Annotation方式 双向关联和单向关联的区别
- Hibernate实体关系映射:双向主键一对一关联
- Hibernate基于主键和外键的单向一对一的关联映射
- Hibernate关系映射(一)一对一单向外键关联@OneToOne Annotation方式
- hibernate映射关系之一对一单向主键关联
- Hibernate关系映射级别注解(一对一双向外键关联、一对一双向外键联合主键)
- Hibernate之对象关系映射01一对一单向关联
- Hibernate主键一对一关联映射实例【xml和注解版本@OneToOne@JoinColumn(name="wifeId")--主键单向】(十二)
- Hibernate关系映射级别注解(一对一单向外键关联)
- Hibernate映射(一)------单向一对一主键关联
- Hibernate关系映射 --- 一对一实例分析(双向关联,是基于主键的)
- java鬼混笔记:Hibernate:2、一对一关系之主键单向和双向关联
- hibernate 关系映射之 单向外键关联一对一
- Hibernate一对一主键关联映射(单向)
- Hibernate关系映射(1)_一对一单向外键关联