SAP Hybris - การสร้างแบบจำลอง

คุณสมบัติหลักอย่างหนึ่งใน Hybris คือความยืดหยุ่นในการเพิ่มวัตถุใหม่ให้กับโมเดลข้อมูลของ Hybris Commerce ทั่วโลก การสร้างแบบจำลองข้อมูล 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>

ประเภท Enum

สิ่งเหล่านี้ใช้เพื่อสร้างการแจงนับใน 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"/>