SAP Hybris – 建模
SAP Hybris – 建模
Hybris 的主要功能之一是可以灵活地向全局 Hybris Commerce Data 模型添加新对象。Hybris 数据建模可帮助组织维护其数据库并帮助管理数据库连接和查询。Hybris 类型系统用于在 Hybris 中设计数据建模。
Hybris 类型系统支持以下数据建模类型 –
-
Items.xml – 此文件用于 Hybris Commerce 数据模型中的数据建模。
-
项目类型– 用于创建表格。
-
关系类型– 用于创建表之间的关系。
-
原子类型– 用于创建各种原子类型。
-
集合类型– 用于创建集合。
-
地图类型– 定义地图。
-
枚举类型– 定义枚举。
现在让我们详细讨论所有这些。
原子类型
这些在 Hybris 中被定义为基本类型,其中包括 Java 数字和字符串对象 – java.lang.integer、java.lang.boolean或java.lang.string。
<atomictypes> <atomictype class = "java.lang.Object" autocreate = "true" generate = "false" /> <atomictype class = "java.lang.Boolean" extends = "java.lang.Object" autocreate = "true" generate = "false" /> <atomictype class = "java.lang.Double" extends = "java.lang.Number" autocreate = "true" generate = "false" /> <atomictype class = "java.lang.String" extends = "java.lang.Object" autocreate = "true" generate = "false" /> </atomictypes>
项目类型
项目类型用于创建新表或更新现有表。这被认为是 Hybris 类型系统的基础。所有新表结构都使用不同的属性在此类型上配置,如下所示 –
<itemtype code = "Customer" extends = "User" jaloclass = "de.hybris/platform.jalo.user.Customer" autocreate = "true" generate = "true"> <attributes> <attribute autocreate = "true" qualifier = "customerID" type = "java.lang.String"> <modifiers read = "true" write = "true" search = "true" optional = "true"/> <persistence type = "property"/> </attribute> </attributes> </itemtype>
关系类型
此类型用于创建表之间的链接。例如 – 您可以链接一个国家和地区。
<relation code = "Country2RegionRelation" generate = "true" localized = "false" autocreate = "true"> <sourceElement type = "Country" qualifier = "country" cardinality = "one"> <modifiers read = "true" write = "true" search = "true" optional = "false" unique = "true"/> </sourceElement> <targetElement type = "Region" qualifier = "regions" cardinality = "many"> <modifiers read = "true" write = "true" search = "true" partof = "true"/> </targetElement> </relation>
枚举类型
这些用于在 Java 中构建枚举以准备一组特定的值。例如 – 一年中的几个月。
<enumtype code = "CreditCardType" autocreate = "true" generate = "true"> <value code = "amex"/> <value code = "visa"/> <value code = "master"/> <value code = "diners"/> </enumtype>
收藏类型
这些用于构建元素类型的集合/组 – 产品组等。
<collectiontype code = "ProductCollection" elementtype = "Product" autocreate = "true" generate = "true"/> <collectiontype code = "LanguageList" elementtype = "Langauage" autocreate = "true" generate = "true"/> <collectiontype code = "LanguageSet" elementtype = "Langauage" autocreate = "true" generate = "true"/>
地图类型
映射类型用于在 Hybris 数据建模中存储键值对。每个键代表它自己的代码。
<maptype code = "localized:java.lang.String" argumenttype = "Language" returntype = "java.lang.String" autocreate = "true" generate = "false"/>