Hybris - ItemType of Relation 概念

Hybris - ItemType of Relation concept

最近我遇到了人们拥有关系的项目类型的情况。有人能给我解释一下这个结构的概念吗?

我也生成了一个关系,但找不到 getters/setters。我相信,这是因为没有为关系生成 类。

对于一个特定的项目要求,我不得不将一个关系集合添加到另一个模型,但我什至找不到为该集合生成的 setter 和 getter,我想是因为元素类型是一个关系。我也检查了 extensionmanager,但那里也没有生成 getter 和 setter。

有人可以让我知道如果使用这样的结构我可以获取关系集合的 getter 和 setter 吗?

谢谢, 法汉

首先,您应该尽可能使用 Relation 而不是 Collection。在 hybris 中 Collection 将值作为 CSV 存储在一个字段中,因此它受到字段最大大小的限制,并且可能会被截断。

然后对于 Relation,您将不会生成 Java 模型,而只会生成特定的数据库 table。 getter 和 setter 实际上会根据您的基数在目标和源模型中生成。

如果我们举个例子 - EmailMessage2ToAddressesRel

    <relation code="EmailMessage2ToAddressesRel" .... >
        .
        .
        .
        <sourceElement type="EmailMessage" qualifier="toMessages"
            cardinality="many" collectiontype="list" />
        <targetElement type="EmailAddress" qualifier="toAddresses"
            cardinality="many" collectiontype="list" />
    </relation>

它将 many toMessages 作为源映射到 many toAddresses 作为目标。

如果您查看 EmailMessageModelEmailAddressModel,您会分别找到 toAddressestoMessages 的 getter 和 setter。