一对一外键关联
一对一外键关联使用的是多对一关联策略,只是在多的一端外键上添加一个unique约束来实现一对一实体类:
package com.chris.entity;/** * 人 * @author Administrator * */public class Person {private int id;private String name;private IDCard idCard;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 IDCard getIdCard() {return idCard;}public void setIdCard(IDCard idCard) {this.idCard = idCard;}}
package com.chris.entity;/** * 身份证 * @author Administrator * */public class IDCard {private int id;private String cardNo;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getCardNo() {return cardNo;}public void setCardNo(String cardNo) {this.cardNo = cardNo;}}
映射文件:
Person.hbm.xml
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping package="com.chris.entity"><class name="Person"><id name="id"><generator class="native" /></id><property name="name" /><many-to-one name="idCard" class="IDCard" column="idCard_id"unique="true" not-null="false" /></class></hibernate-mapping> IDCard.hbm.xml
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping package="com.chris.entity"> <class name="IDCard"> <id name="id"> <generator class="native"/> </id> <property name="cardNo"/> </class></hibernate-mapping>
页:
[1]