User.hbm.xml                
<one-to-one name="room" 
     class="com.eli.hbstudy.oto2.Room"
         property-ref="user" cascade="all">

解决方案 »

  1.   

    谢谢2楼的回复,只是又出现了一个新问题,虽然原来数据只能插入到User表,现在Room表也能插入了,但是Room表中的外键(fk_uid)值却是Null.这就失支了关联的意义了啊!!
    我在网上找了很多一对一关联的例子,但没有找到一个详细介绍外键关联一对一的实例,还有我真是奇怪了,Hibernate的参考手册上的介始怎么也会缺胳膊少腿,我在做一对一主键关联时参照参考手册的配置也是出错,查了半天才知道是少了一个unsaved-value这个可选参数的配置!!即然是可选,那不选也应该没有有问题啊??不知道是不是我的运行环境造成的!!
      

  2.   

    你保存user的时候,hibernate执行的顺序是现插入room再插入user这样当然会导致外键为空,你可以增加一个r.setUser(u);这样hibernate就会在最后加上一句update外键
      

  3.   

    这不叫一对一吧,hibernate里有一对一这样的概念吗?