person.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">
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">
One2OneTest.java
public void testLoad(){
Session session=null;
session=HibernateUtil.getSession();
Transaction tx=null;
try{
tx=session.beginTransaction();
Person p= (Person) session.get(Person.class, 1);
System.out.println(p.getIdCard().getName());
tx.commit();
}catch(Exception e){
if(tx!=null){
tx.rollback();
}
}finally{
HibernateUtil.closeSession(session);
}
}
控制台输出:
Hibernate: select person0_.id as id0_0_, person0_.name as name0_0_, person0_.idCard as idCard0_0_ from t_person person0_ where person0_.id=?
Hibernate: select idcard0_.id as id1_1_, idcard0_.name as name1_1_, person1_.id as id0_0_, person1_.name as name0_0_, person1_.idCard as idCard0_0_ from t_idCard idcard0_ left outer join t_person person1_ on idcard0_.id=person1_.idCard where idcard0_.id=?
Hibernate: select person0_.id as id0_0_, person0_.name as name0_0_, person0_.idCard as idCard0_0_ from t_person person0_ where person0_.idCard=?
00010232