一对多 关系 考虑 一个One类 一个Many 类, One类中有一个set 用来存放与之关联的 many 对象,many中有一个 与之关联的one类的 引用, 两个类的 hbm 配置文件如下:
One.hbm.xml:
<hibernate-mapping>
<class name = "One" table = "ONE">
<id name = "oneId" type = "string">
<column name = "ONEID" sql-type = "varchar(10)" not-null = "true"></column>
<generator class = "assigned"></generator>
</id>
<set name = "manys" table = "MANY" inverse = "true" cascade= "all">
<key column = "FONEID"></key>
<one-to-many class = "Many"></one-to-many>
</set>
</class>
</hibernate-mapping>
Many.hbm.xml:
<hibernate-mapping>
<class name = "Many" table = "MANY">
<id name = "manyId" type = "string">
<column name = "MANYID" sql-type = "varchar(10)" not-null="true"></column>
<generator class = "assigned"></generator>
</id>
<many-to-one name = "one" class="One" cascade = "all">
<column name = "FONEID" not-null = "false"></column>
</many-to-one>
</class>
</hibernate-mapping>
Test.java:
One one = new One();
one.setOneId("one");
Many many1 = new Many();
many1.setManyId("m1");
many1.setOne(one);
Many many2 = new Many();
many2.setManyId("m2");
many2.setOne(one);
session.save(one);
tx.commit();
结果及联插入没有实现,只存了one对象