public class Card {
private int id;
private int num;
private Person person;
public int getId() {return id;}
public void setId(int id) {this.id = id;}
public int getNum() {return num;}
public void setNum(int num) {this.num = num;}
public Person getPerson() {return person;}
public void setPerson(Person person) {this.person = person;}
}
public class Person {
private int id ;
private String name;
private Card card;
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 Card getCard() {return card;}
public void setCard(Card card) {this.card = card;}
}
<?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.ximen.dao.domain">
<class name="Card" table="CARD">
<id name="id" column="ID" type="int">
<generator class="increment"/>
</id>
<property name="num" column="NUM" type="int"/>
<many-to-one name="person" class="Person" unique="true" column="person_id"/>
</class>
</hibernate-mapping>
<?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.ximen.dao.domain" >
<class name="Person" table="PERSON">
<id name="id" column="ID" type="int">
<generator class="increment" />
</id>
<property name="name" column="NAME" type="string"/>
<one-to-one name="card" class="Card" property-ref="person"/>
</class>
</hibernate-mapping>
import org.hibernate.Session;
import org.hibernate.cfg.Configuration;
public class TestOneToOne1 {
public static void main(String[] args) {
@SuppressWarnings("deprecation")
Session session=new Configuration().configure().buildSessionFactory().openSession();
Person person = (Person) session.get(Person.class, 2);
System.out.println(person.getName()+"的号码是" +person.getCard().getNum());
Card card = (Card) session.get(Card.class, 2);
System.out.println(card.getNum()+"是" +card.getPerson().getName()+"的号码");
session.close();
}
}