hibernate一对多外键关联
虚心向大家请教:
两个表:一个为用户表,一个为用户资质表.形成一对多关系.用户表有主键ID、SFZH(非主键)。用户资质表有SFZH(非主键)等
关联字段为SFZH(身份证号).该怎样实现关联呢?
后来我把用户资质表也加了主键ID。关联代码如下:
Users.hbm.xml
<set name="userZz" cascade="none" lazy="true" table="ZJ_U_USER_ZZ">
<key column="SFZH" foreign-key="SFZH"></key>
<one-to-many class="com.mi.hibernate.base.ZjUUserZz" />
</set>
------------------------
UserZz.hbm.xml
<many-to-one name="user"
column="SFZH"
class="com.mi.hibernate.base.ZjUUsers" cascade="none"
fetch="join"/>
-------------------
我在测试添加时:
ZjUUsers user=new ZjUUsers();
user=(ZjUUsers)s.get(ZjUUsers.class, "4028e4dc1849858e0118498854f80001");
ZjUUserZz userZz=new ZjUUserZz();
userZz.setYxsj("2008-10-21");
user.getUserZz().add(userZz);
userZz.setUser(user);
s.save(userZz);
s.beginTransaction().commit();
报错 ORA-01401: 插入的值对于列过大,好像是把用户表ID添加到用户资质表SFZH字段中了。
请问大家一下,配置文件该怎样修改呢或者测试代码哪有问题呢,在此谢谢大家了。。