【问题标题】:One to Many relationship in Liferay Service BuilderLiferay Service Builder 中的一对多关系
【发布时间】:2016-01-16 09:31:18
【问题描述】:

我大约一周前开始为一个项目学习 Liferay (6.2)。我之前在 JPA (EclipseLink) 中使用过“纯”Java EE(JSP、JSF 等)。

我无法理解的是:

如何使用ServiceBuilder 来创建与我之前定义的行为相似的实体 例如:如果我定义了一个Category 和一个CategoryProperty 实体,它们是一对多的关系,我可以只为 CategoryProperty 定义一个查找器,它返回 parent categoryId 的所有 CategoryPropertys。

根据我正在阅读的书,我只能修改CategoryLocalServiceImplCategoryPropertyLocalServiceImpl的实现,无法触及生成的实体。因此,如果我想列出属于一个类别的每个CategoryProperty,我必须实现并调用 CategoryPropertyLocalServiceUtil.findAllByCategoryId(categoryId) 这不是我想要的。 category.getCategoryProperties() 调用会更自然。

如何在不破坏整个结构的情况下实现这一目标?我可以触摸哪些生成的类?我错过了什么?

谢谢!

【问题讨论】:

    标签: java liferay entity liferay-service-builder


    【解决方案1】:

    简而言之,您的理解是正确的,但并不是全部。

    您可以在CategoryImpl 类中捕获您想要实现方法getCategoryProperties() 的内容。

    该方法将使用您之前创建并在问题中描述的查找器方法。

    【讨论】:

    • 修改 CategoryImpl 后我只需要重新运行 ServiceBuilder ant?
    • 是的,重新运行服务生成器
    • 感谢您的帮助。 :)
    猜你喜欢
    • 2014-08-08
    • 1970-01-01
    • 1970-01-01
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    • 2019-05-15
    • 1970-01-01
    • 2012-08-21
    相关资源
    最近更新 更多