XML-Deskriptordatei für Entitätsmetadaten

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. 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.
Untergeordnete Elemente

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.
Untergeordnete Elemente

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.
Untergeordnete Elemente

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.
Untergeordnete Elemente

Element "attributes"

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.
Untergeordnete Elemente

Element "entity-mappings"

Untergeordnete Elemente

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.