Die Deskriptordatei für Entitätsmetadaten ist eine XML-Datei, die verwendet wird, um ein Entitätsschema für
WebSphere eXtreme Scale zu definieren. Definieren Sie alle
Entitätsmetadaten in der XML-Datei, oder definieren Sie die Entitätsmetadaten
als Annotationen in der Java-Klassendatei der Entität.
Vorrangig wird die XML-Deskriptordatei für Entitäten verwendet, die keine Java-Annotationen verwenden können.
Verwenden Sie XML-Konfiguration, um Entitätsmetadaten zu erstellen, die auf der XML-Datei basieren.
Wenn die XML-Konfiguration in Kombination mit Annotationen verwendet wird, überschreiben einige
der Attribute, die in der XML-Konfiguration definiert werden, die entsprechenden Annotationen.
Wenn Sie ein Element überschreiben, wird dies explizit in den folgenden Abschnitten hervorgehoben.
Ein Beispiel für die XML-Deskriptordatei für Entitätsmetadaten finden Sie im Abschnitt Datei emd.xsd.
Element "id"
Das Element "id" impliziert, dass das Attribut ein Schlüssel ist.
Es muss mindestens ein Element "id" angegeben werden.
Sie können mehrere id-Schlüssel als Verbundschlüssel angeben.
Attribute- name
- Gibt den Namen des Attributs an. Das Attribut muss in der
Java-Datei enthalten sein.
- alias
- Gibt den Elementalias an. Der Aliaswert wird überschrieben, wenn er zusammen mit einer annotierten Entität
verwendet wird.
Element "basic"
Das Element "basic" impliziert, dass das Attribut
ein primitiver Typ oder ein Wrapper für primitive Typen ist.
- java.lang.String
- java.math.BigInteger
- java.math.BigDecimal
- java.util.Date
- java.util.Calendar
- java.sql.Date
- java.sql.Time
- java.sql.Timestamp
- byte[]
- Byte[]
- char[]
- Character[]
- Java Platform,
Standard Edition Version 5
enum
Es ist nicht erforderlich, Attribute für "basic" anzugeben.
Die Attribute des Elements "basic" werden automatisch über Reflexion konfiguriert.
Attribute- name
- Gibt den Namen des Attributs in der Klasse an.
- alias
- Gibt den Elementalias an. Der Aliaswert wird überschrieben, wenn er zusammen mit einer annotierten Entität
verwendet wird.
- fetch
- Gibt den Abruftyp an. Die gültigen Werte sind LAZY und EAGER.
Element "id-class"
Das Element "id_class" gibt eine Verbundschlüsselklasse an,
mit der Entitäten über Verbundschlüssel gesucht werden können.
Attribute- class-name
- Gibt den Klassennamen (eine id-Klasse) an, der für das Element "id-class" verwendet werden soll.
Element "transient"
Das Element "transient" impliziert, dass es ignoriert und nicht verarbeitet wird.
Es kann auch überschrieben werden, wenn es zusammen mit annotierten Entitäten verwendet wird.
Attribute- name
- Gibt den Namen des Attributs an, das ignoriert wird.
Element "version"
Attribute- name
- Gibt den Namen des Attributs an, das ignoriert wird.
Element "cascade-type"
Untergeordnete Elemente- cascade-all: Gibt die Operation "all" an Assoziationen weiter.
- cascade-persist: Gibt die Operation "persist" an Assoziationen weiter.
- cascade-remove: Gibt die Operation "remove" an Assoziationen weiter.
- cascade-merge: Wird momentan nicht verwendet.
- cascade-refresh: Wird momentan nicht verwendet.
Element "one-to-one"
Attribute
- name
- Gibt den Namen der Klasse an, die eine Eins-zu-eins-Beziehung hat.
- alias
- Gibt einen Namensalias an.
- target-entity
- Gibt die Assoziationsklasse an. Dieser Wert ist ein vollständig qualifizierter Klassenname.
- fetch
- Gibt den Abruftyp an. Die gültigen Werte sind LAZY und EAGER.
- mapped-by
- Gibt das Fel an, das Eigner der Beziehung ist. Das Element "mapped-by"
wird nur auf der Nicht-Eigner-Seite der Assoziation angegeben.
- id
- Gibt die Assoziation als Schlüssel an.
Element "one-to-many"
Attribute
- name
- Gibt den Namen des Attributs in der Klasse an.
- alias
- Gibt einen Namensalias an.
- target-entity
- Gibt die Assoziationsklasse an. Dieser Wert ist ein vollständig qualifizierter Klassenname.
- fetch
- Gibt den Abruftyp an. Die gültigen Werte sind LAZY und EAGER.
- mapped-by
- Gibt das Fel an, das Eigner der Beziehung ist. Das Element "mapped-by"
wird nur auf der Nicht-Eigner-Seite der Assoziation angegeben.
Element "many-to-one"
Attribute
- name
- Gibt den Namen des Attributs in der Klasse an.
- alias
- Gibt einen Namensalias an.
- target-entity
- Gibt die Klasse an, auf die dieses Attribut verweist. Dieser Wert ist ein vollständig qualifizierter Klassenname.
- fetch
- Gibt den Abruftyp an. Die gültigen Werte sind LAZY und EAGER.
- id
- Gibt die Assoziation als Schlüssel an.
Element "many-to-many"
Attribute
- name
- Gibt den Namen des Attributs in der Klasse an.
- alias
- Gibt einen Namensalias an.
- target-entity
- Gibt die Klasse an, auf die dieses Attribut verweist. Dieser Wert ist ein vollständig qualifizierter Klassenname.
- fetch
- Gibt den Abruftyp an. Die gültigen Werte sind LAZY und EAGER.
- mapped-by
- Gibt das Fel an, das Eigner der Beziehung ist. Das Element "mapped-by"
wird nur auf der Nicht-Eigner-Seite der Assoziation angegeben.
Element "Entity"
Attribute- name (erforderlich)
- Gibt den Namen des Attributs in der Klasse an.
- class-name
- Gibt den vollständig qualifizierten Klassennamen an.
- access
- Gibt den Zugriffstyp an. Die gültigen Werte sind PROPERTY und FIELD.
- schemaRoot
- Gibt an, dass diese Entität das Schemastammelement ist und als übergeordnete Klasse für partitionierte Daten verwendet wird.
Element "entity-mappings"
Element "entity-listener"
Attribute- class-name (erforderlich)
- Gibt den Namen der Listener-Klasse an.
Element "PrePersist"
Attribute- method-name (erforderlich)
- Gibt die Callback-Methode des Lebenszyklus für das Ereignis "PrePersist" an.
Element "PostPersist"
Attribute- method-name (erforderlich)
- Gibt die Callback-Methode des Lebenszyklus für das Ereignis "PostPersist" an.
Element "PreRemove"
Attribute- method-name (erforderlich)
- Gibt die Callback-Methode des Lebenszyklus für das Ereignis "PreRemove" an.
Element "PreUpdate"
Attribute- method-name (erforderlich)
- Gibt die Callback-Methode des Lebenszyklus für das Ereignis "PreUpdate" an.
Element "PostUpdate"
Attribute- method-name (erforderlich)
- Gibt die Callback-Methode des Lebenszyklus für das Ereignis "PostUpdate" an.
Element "PostLoad"
Attribute- method-name (erforderlich)
- Gibt die Callback-Methode des Lebenszyklus für das Ereignis "PostLoad" an.