一对一的组合与一对一的关联

时间:2016-09-06 09:52:24

标签: cuba-platform

我有一个地址的客户。如果客户将被删除,则应删除该地址。在我看来,这是一个组合。但古巴的成分只有一对多。

我用一对一关联和级联类型ALL解决了它:

Manifest-Verion: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: TestWAB
Bundle-Version: 0.1.0.SNAPSHOT
Bundle-Name: Simulation Vis
Import-Package: javax.servlet,
 javax.servlet.http,
 javax.ws.rs,
 javax.ws.rs.core,
 org.osgi.framework;version="1.3.0"
Bundle-ClassPath: WEB-INF/classes,
 WEB-INF/lib/commons-fileupload-1.3.jar,
 WEB-INF/lib/commons-io-2.2.jar,
 WEB-INF/lib/el-api-2.2.jar,
 WEB-INF/lib/el-impl-2.2.jar,
 WEB-INF/lib/javax.faces-api-2.2.jar,
 WEB-INF/lib/javax.servlet.jsp-api-2.2.1.jar,
 WEB-INF/lib/javax.servlet-api-3.1.0.jar,
 WEB-INF/lib/primefaces-5.3.jar
Web-ContextPath: /testWAB
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-Activator: test.Activator
Require-Bundle: myBundle0;bundle-version="0.1.0";visibility:=reexport,
 myBundle1;bundle-version="0.1.0";visibility:=reexport,
 myBundle2;bundle-version="0.1.0"
Bundle-Vendor: FooBar

这是我必须走的路吗?

1 个答案:

答案 0 :(得分:2)

你是对的,目前@Composition注释仅影响编辑器如何为一对多关系工作。未来版本将涵盖一对一关系的编辑,这是我们的路线图。

对于级联删除,我们建议采用以下方法:

  • 如果主实体实施SoftDelete,请在详细信息属性上使用@OnDelete(DeletePolicy.CASCADE)注释

  • 否则,在外键定义中使用ON DELETE CASCADE - 可以手动添加到初始化/更新脚本<​​/ p>