SAP Hybris - Modelleme
Hybris'in ana özelliklerinden biri, global Hybris Commerce Data modeline yeni nesneler ekleme esnekliğidir. Hybris veri modelleme, bir kuruluşun veritabanını korumasına ve veritabanı bağlantılarını ve sorgularını yönetmesine yardımcı olur. Hybris Type sistemi, Hybris'te veri modelleme tasarlamak için kullanılır.
Bir Hybris tipi sistem, veri modelleme için desteklenen aşağıdaki tiplere sahiptir -
Items.xml - Bu dosya, Hybris Commerce veri modelinde veri modelleme için kullanılır.
Item types - Bu tablo oluşturmak için kullanılır.
Relation types - Bu, tablolar arasında ilişki oluşturmak için kullanılır.
Atomic types - Çeşitli Atomik türleri oluşturmak için kullanılır.
Collection types - Koleksiyonlar oluşturmak için kullanılır.
Map Types - Haritaları tanımlamak için.
Enum types - Enümleri tanımlamak için.
Şimdi tüm bunları ayrıntılı olarak tartışalım.
Atom Türleri
Bunlar, Hybris'te Java numarası ve dize nesnelerini içeren temel türler olarak tanımlanır - java.lang.integer, java.lang.boolean veya 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>
Öğe Türleri
Öğe türleri, yeni tablolar oluşturmak veya mevcut tabloları güncellemek için kullanılır. Bu, Hybris tipi bir sistem için bir temel olarak kabul edilir. Tüm yeni tablo yapıları, aşağıda gösterildiği gibi farklı öznitelikler kullanılarak bu tür üzerinden yapılandırılır -
<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>
İlişki Türleri
Bu tür, tablolar arasında bir bağlantı oluşturmak için kullanılır. Örneğin - Bir ülke ve bölgeyi birbirine bağlayabilirsiniz.
<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 Türleri
Bunlar, belirli bir değer kümesini hazırlamak için Java'da numaralandırma oluşturmak için kullanılır. Örneğin - Bir yıldaki aylar.
<enumtype code = "CreditCardType" autocreate = "true" generate = "true">
<value code = "amex"/>
<value code = "visa"/>
<value code = "master"/>
<value code = "diners"/>
</enumtype>
Koleksiyon Türleri
Bunlar, koleksiyon / öğe türleri grubu oluşturmak için kullanılır - ürün grubu vb.
<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"/>
Harita Türleri
Harita türleri, Hybris veri modellemesinde anahtar değer çiftlerini depolamak için kullanılır. Her anahtar kendi kodunu temsil eder.
<maptype code = "localized:java.lang.String" argumenttype = "Language"
returntype = "java.lang.String" autocreate = "true" generate = "false"/>