Hibernate关联关系配置-----双向一对一映射配置
2011-07-23 10:36
501 查看
实体:
hbm配置文件:
测试文件:
测试结果:
package bi.one2one; public class Husband { private int id; private String name; private Wife wife; public Husband() { } public Husband(int id, String name, Wife wife) { super(); this.id = id; this.name = name; this.wife = wife; } 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 Wife getWife() { return wife; } public void setWife(Wife wife) { this.wife = wife; } } package bi.one2one; public class Wife { private int id; private String name; private Husband husband; public Wife() { } public Wife(int id, String name, Husband husbnad) { super(); this.id = id; this.name = name; this.husband = husbnad; } 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 Husband getHusband() { return husband; } public void setHusband(Husband husband) { this.husband = husband; } }
hbm配置文件:
<hibernate-mapping> <class name="bi.one2one.Husband"> <id name="id" column="did"> <generator class="native" /> </id> <property name="name" type="string" column="name"></property> <many-to-one name="wife" unique="true" column="wid"></many-to-one> </class> </hibernate-mapping> <hibernate-mapping> <class name="bi.one2one.Wife"> <id name="id" column="did"> <generator class="native" /> </id> <property name="name" type="string" column="name"></property> <one-to-one name="husband" property-ref="wife"></one-to-one> </class> </hibernate-mapping>
测试文件:
public class Test { @org.junit.Test public void testAdd() { SessionFactory sf = HibernateUtil.getSessionFactory(); Session session = sf.getCurrentSession(); session.beginTransaction(); Wife wife = new Wife(); wife.setName("wife"); Husband husband = new Husband(); husband.setName("husband"); husband.setWife(wife); session.save(wife); session.save(husband); session.beginTransaction().commit(); } }
测试结果:
Hibernate: insert into Wife (name) values (?) Hibernate: insert into Husband (name, wid) values (?, ?)
相关文章推荐
- Hibernate关联关系配置-----双向一对一映射配置
- Hibernate关联关系配置-----基于连接表的双向一对一映射配置
- Hibernate关联关系配置-----基于连接表的双向一对一映射配置
- Hibernate关联关系映射-----双向一对多/多对一映射配置
- Hibernate关联关系映射配置(一对多,多对多,一对一)
- Hibernate关联关系映射-----双向一对多/多对一映射配置
- Hibernate关联关系配置-----基于连接表的双向一对多/多对一映射配置
- Hibernate关联关系映射-----单向一对一映射配置
- Hibernate关联关系配置-----基于连接表的双向一对多/多对一映射配置
- Hibernate关联关系映射-----单向一对一映射配置
- Hibernate关联关系映射-----双向一对多/多对一映射配置
- Hibernate一对一主键双向关联映射(xml配置)
- Hibernate关联关系映射-----双向一对多/多对一映射配置
- hibernate 一对一关系映射配置
- Hibernate之基于外键映射的一对一(1-1)关联关系
- hibernate 关联关系(多对一、多对多、一对一)的配置
- 【Hibernate步步为营】--双向关联一对一映射详解(二)
- Hibernate关系映射(二) 基于外键的双向一对一
- 【Hibernate 3】一对一映射配置
- Hibernate框架中在.hbm.xml映射文件中配置表与表之间的关联关系