3

我一直在寻找使用 Liferay IDE 的服务构建器为我的数据库设置引用完整性。

例如:我有一个主表(实体)和一个子表(实体)。子表有一个外键,它是主表的主键。如果我删除主表中的一个条目,则子表中的相应行也应该被删除。如何在 Liferay Service Builder 中实现这一点。

4

1 回答 1

0

您不能,Service Builder 既不提供也不应该使用此类数据库检查。在 Service Builder 设计中,您的服务应该删除依赖实体。在您的示例中,管理主表的服务应该在其delete方法上也删除指向删除主行的子行。一个很好的例子是JournalArticleLocalServiceImpl.deleteArticle(JournalArticle, String, ServiceContext)方法,例如:

journalArticleImageLocalService.deleteImages(
    article.getGroupId(), articleId, article.getVersion());

// Expando

expandoRowLocalService.deleteRows(article.getId());
于 2014-04-19T01:54:20.753 回答