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

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

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

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

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

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

谢谢了!!!

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

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

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

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