Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用空引用保存实体_Java_Jpa_Eclipselink_Entitymanager - Fatal编程技术网

Java 使用空引用保存实体

Java 使用空引用保存实体,java,jpa,eclipselink,entitymanager,Java,Jpa,Eclipselink,Entitymanager,例如,我想知道我是否有像客户和客户地址这样的实体,并且地址是 在customer中,如果我找不到与实体键匹配的项,会发生什么情况customer的某些实例将需要使用address null保存 提交中会发生什么,我将得到转储?这取决于您使用的技术以及您定义的DB模式。 通常,对象图在关系数据库中表示为多个带有外键的表,这些外键表示对象之间的引用。如果字段(FK)可为空,则可以保存不带地址的客户。否则将引发约束冲突异常 如果您需要更多信息,请发布一些代码并解释您正在使用的持久化技术 Imo,如果d

例如,我想知道我是否有像客户和客户地址这样的实体,并且地址是 在customer中,如果我找不到与实体键匹配的项,会发生什么情况customer的某些实例将需要使用address null保存
提交中会发生什么,我将得到转储?

这取决于您使用的技术以及您定义的DB模式。 通常,对象图在关系数据库中表示为多个带有外键的表,这些外键表示对象之间的引用。如果字段(FK)可为空,则可以保存不带地址的客户。否则将引发约束冲突异常


如果您需要更多信息,请发布一些代码并解释您正在使用的持久化技术

Imo,如果db允许地址列中的空值(并且不存在FK约束),它将保存空值。否则,它将失败。

我使用entitymanager持久化所有对象,然后在最后对所有对象执行entitymanager.commit,我不确定行为如何考虑空引用,从我的POV来看,如果FG为空,我将获得转储,但对于任何其他引用,如果某个关键对象没有引用,我将不会获得转储,如果我错了,请纠正我…谢谢!