您的位置:首页 > 其它

hibernate 一对一主键映射关系

2018-03-02 16:27 609 查看
User类:package com.wgh.model;
/**
* 用户持久化类
*/
public class User {
private Integer id; //id编号
private String username; //姓名
private Integer age; //年龄
private IdCard idCard; //证件
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public IdCard getIdCard() {
return idCard;
}
public void setIdCard(IdCard idCard) {
this.idCard = idCard;
}
}
IdCard类:
package com.wgh.model;
/**
* 证件持久化类
*/
public class IdCard {
private Integer id;			//id
private String num;			//号码
private User user;			//用户
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getNum() {
return num;
}
public void setNum(String num) {
this.num = num;
}
}
User(User.hbm.xml)映射文件:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping  package="com.wgh.model">
<class name="com.wgh.model.User" table="tb_user_onetoone">
<!-- 主键id -->
<id name="id">
<generator class="native"/>
</id>
<!-- 姓名 -->
<property name="username" not-null="true" />
<!-- 年龄 -->
<property name="age"/>
<!-- 一对一映射 -->
<one-to-one name="idCard"/>
</class>
</hibernate-mapping>
IdCard(IdCard.hbm.xml)映射文件:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.wgh.model">
<class name="com.wgh.model.IdCard" table="tb_idCard_onetoone">
<!-- 主键id -->
<id name="id">
<!-- 参考User的外键 -->
<generator class="foreign">
<param name="property">user</param>
</generator>
</id>
<!-- 证件号 -->
<property name="num" not-null="true"/>
<!-- 一对一映射 -->
<one-to-one name="user" constrained="true"/>
</class>
</hibernate-mapping>
tb_user_onetoone表:



tb_idCard_onetoone表:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: