SAPHybris-モデリング
Hybrisの主な機能の1つは、グローバルなHybris CommerceDataモデルに新しいオブジェクトを追加できる柔軟性です。Hybrisデータモデリングは、組織がデータベースを維持するのに役立ち、データベース接続とクエリの管理に役立ちます。Hybris Typeシステムは、Hybrisでのデータモデリングの設計に使用されます。
Hybris型システムには、データモデリングでサポートされている次の型があります。
Items.xml −このファイルは、HybrisCommerceデータモデルのデータモデリングに使用されます。
Item types −これはテーブルの作成に使用されます。
Relation types −これはテーブル間の関係を作成するために使用されます。
Atomic types −さまざまな原子タイプを作成するために使用されます。
Collection types −コレクションの作成に使用されます。
Map Types −マップを定義する。
Enum types −列挙型を定義します。
これらすべてについて詳しく説明しましょう。
原子タイプ
これらは、Java番号および文字列オブジェクトを含むHybrisの基本タイプとして定義されています– 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で列挙を構築するために使用されます。例– 1年の月。
<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"/>