用user插入 Set set = new HashSet(); set.add(new TAddress()); set.add(new TAddress()); set.add(new TAddress()); set.add(new TAddress()); user.setAddresses(set); session.save(user);
试过了,还是不行 下面是出现的hibernate,sql语句: Hibernate: select tuser0_.id as id1_0_, tuser0_.name as name1_0_, tuser0_.age as age1_0_, tuser0_.group_id as group4_1_0_ from Sample.dbo.T_User tuser0_ where tuser0_.id=? Hibernate: select addresses0_.user_id as user4_1_, addresses0_.id as id1_, addresses0_.id as id0_0_, addresses0_.zipcode as zipcode0_0_, addresses0_.tel as tel0_0_, addresses0_.user_id as user4_0_0_ from Sample.dbo.T_Address addresses0_ where addresses0_.user_id=?
<set name="addresses" table="T_Address" lazy="false" inverse="false" cascade="all">
Set set = new HashSet();
set.add(new TAddress());
set.add(new TAddress());
set.add(new TAddress());
set.add(new TAddress());
user.setAddresses(set);
session.save(user);
下面是出现的hibernate,sql语句:
Hibernate: select tuser0_.id as id1_0_, tuser0_.name as name1_0_, tuser0_.age as age1_0_, tuser0_.group_id as group4_1_0_ from Sample.dbo.T_User tuser0_ where tuser0_.id=?
Hibernate: select addresses0_.user_id as user4_1_, addresses0_.id as id1_, addresses0_.id as id0_0_, addresses0_.zipcode as zipcode0_0_, addresses0_.tel as tel0_0_, addresses0_.user_id as user4_0_0_ from Sample.dbo.T_Address addresses0_ where addresses0_.user_id=?
<key column="user_id"></key> // user_id 应为 id
<one-to-many class="com.TAddress"/>
</set> <many-to-one name="user"
class="com.TUser"
cascade="none"
column="user_id" //此处user_id 应为 id
insert="true"
update="true"
outer-join="auto"
access="property"
/>