ruby07
ruby07
2010-06-18 20:19
浏览 305
已采纳

hibernate 一对一唯一外键映射中 外键如何同时为null

A与B是一对一关系,A有一个b_id外键到B。

我是先有A对象,再有B对象。

但如果我先保存两个A对象,而对应的B对象还没有生成,那这时在A这张表里的b_id列的值就会同时为null.

问题就来了,因为是唯一外键外联,则外键b_id列不能相同,也就不能同时为null。

我想问,应该如何设计让外键同时为null,或者有其他好的设计方法?

谢谢了!!!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • lqxv
    lqxv 2010-06-22 09:37
    已采纳

    这是在实体里设置的。我用的是注解来声明的。

    感觉现在的你就像我以前那样,对hibernate这些关系有点稀里糊涂。我是前段时间看了黎活明老师讲的视频教程后,才豁然开朗的。你可以去看一下他讲的关于 jpa 的视频教程。即使你不用 jpa ,但里面的关系是一模一样的,看了后,相信你绝对会大有收获的,关于 hibernate 里面的关系就会特别清楚了。

    纯粹是个人感觉,说错了,别生气。

    点赞 评论
  • lqxv
    lqxv 2010-06-21 11:17

    你可以设置 A 对象的b_id 的 optionable=true 就行了

    点赞 评论

相关推荐