对于JPA,我在实体类中定义诸如级联类型和orphanRemoval设置之类的问题时遇到问题。对我而言,在实体上定义Cascade Type和orphanRemoval是有限制的,因为它假设您始终希望这些设置在所有场景中都相同。针对不同用例的不同CascadeType值
但是,我可以想到很多情况下,应用程序有时可能需要orphanRemoval,而其他时间不需要给定实体的orphanRemoval。同样,应用程序有时可能需要一个级联类型,并且在其他时间需要不同的级联类型用于同一个实体。
我希望实体管理器可以让你在做合并,坚持等等时指出级联类型(orphanRemoval)应该是什么,但我不认为api支持这一点。
是否可以针对不同场景使用不同级联类型或orphanRemoval值?
我发现这个问题JPA programmaticaly define cascading options它提出了一个类似的问题,答案似乎是,它是不可能的,至少与级联类型。我开始认为我不应该为我的任何关系使用级联类型/ orphanRemoval,这意味着在我确实希望孩子被保存/更新的情况下,我将不得不手动执行此操作。
我已经删除了你的第二个问题,因为你应该坚持每个问题一个问题,它使你的问题主要是基于观点的,这将使它脱离主题。 –