主键关联
两个关联的实体在表中具有相同的主键值,这个主键可只由其中一个表生成,在另外一个表中通过映射文件中使用主键的foreign生成机制引用已经生成的主键值。
Student类
package Mapping2;
public class Student {
private Long id;
private long studentNo;
private String studentName;
private int sage;
private String major;
/* 进行一对一关联,双方互添引用对方对象的属性及方法 */
private Card card;
public Card getCard() {
return card;
}
public void setCard(Card card) {
this.card = card;
}
public Student() {}
public Student(long studentNo, String studentName, int sage, String major) {
super();
this.studentNo = studentNo;
this.studentName = studentName;
this.sage = sage;
this.major = major;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public long getStudentNo() {
return studentNo;
}
public void setStudentNo(long studentNo) {
this.studentNo = studentNo;
}
public String getStudentName() {
return studentName;
}
public void setStudentName(String studentName) {
this.studentName = studentName;
}
public int getSage() {
return sage;
}
public void setSage(int sage) {
this.sage = sage;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
}
Student.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="Mapping2&#