Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.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 默认情况下,对所有@oneToMany关系使用(cascade=CascadeType.ALL)模式好吗?_Java_Jpa_Orm_One To Many_Cascade - Fatal编程技术网

Java 默认情况下,对所有@oneToMany关系使用(cascade=CascadeType.ALL)模式好吗?

Java 默认情况下,对所有@oneToMany关系使用(cascade=CascadeType.ALL)模式好吗?,java,jpa,orm,one-to-many,cascade,Java,Jpa,Orm,One To Many,Cascade,我已经看到,大多数情况下,开发人员在JPA中的所有@OneToMany关系中默认使用cascade=CascadeType.ALL。但这真的是一个好模式吗?假设我们对一个实体进行更新,它是否会对所有相互关联的相关实体启动一个非常长的更新操作链?例如: 对类实体执行简单更新将启动此链: updateclass=>updatestudent=>updatecourse=>…这个主意太糟糕了。每种关系都应以个案为基础。您真的希望对每个关系执行级联删除吗@尼尔·斯托克顿:亲爱的尼尔,我同意你的看法。但可

我已经看到,大多数情况下,开发人员在JPA中的所有@OneToMany关系中默认使用cascade=CascadeType.ALL。但这真的是一个好模式吗?假设我们对一个实体进行更新,它是否会对所有相互关联的相关实体启动一个非常长的更新操作链?例如:

对类实体执行简单更新将启动此链:
updateclass=>updatestudent=>updatecourse=>…

这个主意太糟糕了。每种关系都应以个案为基础。您真的希望对每个关系执行级联删除吗@尼尔·斯托克顿:亲爱的尼尔,我同意你的看法。但可以尝试使用netbeans从数据库自动生成实体。它生成cascade=cascadeType。默认情况下,所有这些都适用于许多oneToMany关系!