SAP Hybris - Моделирование

Одной из основных функций Hybris является гибкость добавления новых объектов в глобальную модель данных Hybris Commerce Data. Моделирование данных Hybris помогает организации поддерживать свою базу данных и помогает управлять подключениями к базе данных и запросами. Система Hybris Type используется для проектирования моделирования данных в Hybris.

Система типов Hybris поддерживает следующие типы для моделирования данных:

  • Items.xml - Этот файл используется для моделирования данных в модели данных Hybris Commerce.

  • Item types - Используется для создания таблиц.

  • Relation types - Используется для создания связи между таблицами.

  • Atomic types - Используется для создания различных атомных типов.

  • Collection types - Используется для создания коллекций.

  • Map Types - Чтобы определить карты.

  • Enum types - Определить Enums.

Давайте теперь обсудим все это подробно.

Атомные типы

В 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"/>