Befehl wsreversemapping

Das Tool wsreversemapping generiert persistente Klassendefinitionen und Metadaten aus einem Datenbankschema.

Syntax

Bevor Sie den Befehl ausführen, müssen Sie eine Kopie der Datei persistence.xml im Klassenpfad haben oder mit dem Argument "-p [Pfad_der_Datei_persistence.xml]" als Eigenschaftendatei angeben. Setzen Sie den Befehl über das Unterverzeichnis bin des Verzeichnisses Profilstammverzeichnis ab.

Der Befehl hat die folgende Syntax:

[AIX][HP-UX][Linux][Solaris][z/OS]
wsreversemapping.sh [Parameter][Argumente]
[IBM i]
wsreversemapping [Parameter][Argumente]
[Windows]
wsreversemapping.bat [Parameter][Argumente]

Parameter

Das Tool wsreversemapping akzeptiert die Standardgruppe der Befehlszeilenargumente, die vom Konfigurationsgerüst zusammen mit den folgenden Angaben definiert werden:
  • -schemas/-s <Schema- und Tabellennamen>: Eine Liste der Schema- und Tabellennamen (durch Kommata voneinander getrennt), für die das Tool "wsreversmapping" ausgeführt werden soll, wenn keine XML-Schemadatei angegeben ist.

    Jedes Element in der Liste muss die Namenskonventionen für die Eigenschaft "openjpa.jdbc.Schemas" respektieren. Wenn dieses Parameter-Flag übergangen wird, wird standardmäßig der Wert der Eigenschaft Schemas verwendet. Ist die Eigenschaft Schemas nicht definiert, werden alle Schemata umgekehrt zugeordnet.

  • -package/-p <Paketname>: Der Paketname der generierten Klassen.

    Wenn kein Paketname angegeben ist, enthält der generierte Code keine Paketdeklarationen.

  • -directory/-d <Ausgabeverzeichnis>: Der gesamte generierte Code und alle generierten Metadaten werden in das Verzeichnis unter diesem Pfad geschrieben.

    Wenn der Pfad nicht mit dem Paket einer Klasse übereinstimmt, wird die Paketstruktur unterhalb des Verzeichnisses erstellt. Dieser Parameter nimmt standardmäßig das aktuelle Verzeichnis als Wert an.

  • -useSchemaName/-sn <true/t | false/f>: Setzen Sie dieses Parameter-Flag auf true, um im Namen jeder generierten Klasse sowohl den Schema- als auch den Tabellennamen anzugeben.

    Diese Methode kann nützlich sein, wenn Sie mit mehreren Schemata arbeiten, die Tabellen mit identischen Namen haben.

  • -useForeignKeyName/-fkn <true/t | false/f>: Setzen Sie dieses Parameter-Flag auf true, wenn die Feldnamen für Beziehungen auf dem Namen des Fremdschlüssels der Datenbank basieren sollen.

    Standardmäßig werden Feldnamen für Beziehungen vom Namen der zugehörigen Klasse abgeleitet.

  • -nullableAsObject/-no <true/t | false/f>: Standardmäßig werden alle Spalten ohne Fremdschlüssel primitiven Elementen zugeordnet.

    Setzen Sie dieses Parameter-Flag auf true, um Felder für primitive Wrapper und nicht für Spalten, die Nullwerte zulassen, zu generieren.

  • -blobAsObject/-bo <true/t | false/f>: Standardmäßig werden alle Binärspalten den byte[]-Feldern zugeordnet.

    Setzen Sie dieses Parameter-Flag auf true, um die Binärspalten stattdessen Object-Feldern zuzuordnen.

    Achtung: Wenn die Zuordnung auf diese Weise erfolgt, wird angenommen, dass die Spalte ein serialisiertes Java™-Objekt enthält.
  • -primaryKeyOnJoin/pkj <true/t | false/f>: Standardmäßig ordnet das Tool für Reverse Mapping alle Tabellen mit Primärschlüsseln persistenten Klassen zu.

    Wenn das Schema auch Primärschlüssel in vielen Verknüpfungstabellen hat, setzen Sie dieses Flag auf true, um zu vermeiden, dass für diese Tabellen Klassen erstellt werden.

  • -inverseRelations/-ir <true/t | false/f>: Setzen Sie dieses Parameter-Flag auf false, um zu verhindern, dass inverse 1:n- oder 1:1-Beziehungen für jede ermittelte n:1- bzw. 1:1-Beziehung erstellt wird.
  • -useDatastoreIdentity/-ds <true/t | false/f>: Setzen Sie dieses Parameter-Flag auf true, um eine Datenspeicheridentität für Tabellen mit einzelnen, numerischen Primärschlüsselspalten zu verwenden.

    Das Tool verwendet gewöhnlich für alle generierten Klassen eine Anwendungsidentität.

  • -useBuiltinIdentityClass/-bic <true/t | false/f>: Setzen Sie dieses Parameter-Flag auf false, um zu verhindern, dass das Tool "wsreversemapping" integrierte Anwendungsidentitätsklassen verwendet, wenn dies möglich ist.

    Diese Einstellung zwingt das Tool, angepasste Anwendungsidentitätsklassen zu erstellen, selbst wenn nur eine Primärschlüsselspalte vorhanden ist.

  • -innerIdentityClasses/-inn <true/t | false/f>: Setzen Sie dieses Parameter-Flag auf true, um alle generierten Anwendungsidentitätsklassen als statische untergeordnete Klassen in den persistenten Klassen erstellen zu lassen.

    Die Standardeinstellung ist false.

  • -identityClassSuffix/-is <Suffix>: Ein Suffix, das zur Bildung von Namen von Anwendungsidentitätsklassen an die Klassennamen bzw. zur Bildung von Namen von untergeordneten Identitätsklassen an die Namen der untergeordneten Klassen angehängt werden soll.

    Der Standardwert für das Suffix ist Id.

  • -typeMap/-typ <Typenzuordnung>: Eine Zeichenfolge, die die Java-Standardklassen angibt, die für jeden SQL-Typ im Schema generiert werden sollen.

    Das Format ist SQLTYPE1=JavaClass1, SQLTYPE2=JavaClass2. Der SQL-Typname sucht zuerst nach einer auf SQLTYPE(SIZE,PRECISION) basierenden Anpassung. Anschließend sucht er nach einer auf SQLTYPE(SIZE) basierenden und dann nach einer auf SQLTYPE basierenden Anpassung. Wenn eine Spalte des Typs CHAR gefunden wird, wird zuerst nach der Namensspezifikation des Typs CHAR(50,0), dann nach der des Typs CHAR(50) und schließlich nach der des Typs CHAR gesucht. Wenn Sie z. B. eine Zeichenfeldgruppe für jede Zeichenspalte, deren Größe exakt 50 Zeichen beträgt, und ein Kurzzeichen für jeden Typennamen INTEGER generieren möchten, können Sie Folgendes angeben: CHAR(50)=char[],INTEGER=short.

    Achtung: Die verschiedenen Datenbanken erfassen Typennamen auf unterschiedliche Weise, ein bestimmter Datenbanktyp kann vielleicht bei einer anderen Datenbank nicht verwendet werden. Aktivieren Sie die Protokollierung der Tracestufe (TRACE) im Metadatenkanal, um zu verfolgen, welche Typennamen von JPA für WebSphere Application Server geprüft werden.
  • -customizerClass/-cc <Klassenname>: Der vollständige Klassenname eines Anpassungs-Plug-ins des Typs org.apache.openjpa.jdbc.meta.ReverseCustomizer.

    Wenn Sie keine eigene Umkehranpassungsfunktion angeben, verwendet das System standardmäßig PropertiesReverseCustomizer. Diese Anpassungsfunktion ermöglicht Ihnen, mit dem Flag "-customizerProperties" einfache Anpassungsfunktionen in der vorhandenen Eigenschaftendatei anzugeben.

    • -customizerProperties/-cp<Eigenschaftendatei oder Ressource>: Der Pfad- oder Ressourcenname einer Eigenschaftendatei, die bei der Initialisierung an die Umkehranpassungsfunktion übergeben werden soll.
    • -customizer/-c <Eigenschaftsname> <Eigenschaftswert>: Der angegebene Eigenschaftsname wird mit der entsprechenden Java-Bean-Eigenschaft in der angegebenen Umkehranpassungsfunktion abgeglichen und auf den angegebenen Wert gesetzt.

Verwendung

Das Tool wsreversemapping wird verwendet, um umgekehrte Zuordnungen (Bottom-up-Zuordnungen) von Datenbanktabellen zu Entitätsquellendateien vorzunehmen. Das ist nützlich, wenn Entwickler Java-Dateien einer Datenbank für andere JPA-Anwendungen generieren möchten. Gehen Sie wie folgt vor, um das Tool auszuführen:
  • Datenbanktabellen und Datenbankverbindung müssen konfiguriert sein.
  • Führen Sie das Tool "wsreversemapping" über die Befehlszeile im Verzeichnis "the $ {profile_root}/bin" aus.
  • Das Tool generiert Dateien mit der Erweiterung .java für jede Klasse sowie eine zugehörige XML-Deskriptordatei orm.xml.
Möglicherweise müssen die vom Tool wsreversemapping generierten Java-Dateien bearbeitet werden, bevor sie in einer Anwendung verwendet werden können. Generierte Dateien enthalten außerdem keine Annotationen. Annotationen können manuell hinzugefügt werden. Nachrichten und Fehler werden gemäß der Konfiguration in der Administrationskonsole protokolliert.

Beispiele

Generieren Sie Entitäten basierend auf den in der Datei schema.xml gespeicherten Informationen. Die Datei Schema.xml wurde beim Ausführen des Schematools erstellt. Die Java-Dateien werden im Verzeichnis src erstellt und verwenden das Paket com.xyz:

[AIX][HP-UX][Linux][Solaris][z/OS]
${profile_root}/bin/wsreversemapping.sh -pkg com.xyz -d ./src schema.xml
[IBM i]
${profile_root}/bin/wsreversemapping -pkg com.xyz -d ./src schema.xml
[Windows]
${profile_root}\bin\wsreversemapping.bat -pkg com.xyz -d ./src schema.xml

Generieren Sie Entitäten basierend auf den in einer DB2-Datenbank gespeicherten Informationen. Entitäten werden im Verzeichnis src erstellt und verwenden das Paket com.reversemapped:

[AIX][HP-UX][Linux][Solaris][z/OS]
C:\> %profile_root%/bin/wsreversemapping.bat -sa dropDB Magazine.javapkg com.reversemapped -d src 
-connectionDriverName=com.ibm.db2.jcc.DB2Driver -connectionURL=jdbc:db2:localhost:50000/TEST 
-connectionUser=db2User -connectionPassword=db2Password 
[IBM i]
C:\> %profile_root%/bin/wsreversemapping -sa dropDB Magazine.javapkg com.reversemapped -d src 
-connectionDriverName=com.ibm.db2.jcc.DB2Driver -connectionURL=jdbc:db2:localhost:50000/TEST 
-connectionUser=db2User -connectionPassword=db2Password 
[Windows]
C:\> %profile_root%\bin\wsreversemapping.bat -sa dropDB Magazine.javapkg com.reversemapped -d src 
-connectionDriverName=com.ibm.db2.jcc.DB2Driver -connectionURL=jdbc:db2:localhost:50000/TEST 
-connectionUser=db2User -connectionPassword=db2Password 

Weitere Informationen

Weitere Informationen finden Sie im Abschnitt zur Zuordnung in der Veröffentlichung "Apache OpenJPA User's Guide".


Symbol, das den Typ des Artikels anzeigt. Referenzartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rejb_wsreversemapping
Dateiname:rejb_wsreversemapping.html