Altova MapForce 2024 Professional Edition

Code Generator

Zur Startseite Zurück Nach oben Weiter

MapForce enthält einen integrierten Code Generator, der automatisch Java-, C++ oder C#-Klassendateien anhand von mit MapForce erstellten Mapping-Designs generieren kann. Dabei beschränkt MapForce das Mappen nicht auf 1:1-Beziehungen, sondern gestattet die gleichzeitige Verwendung mehrerer Quellen und Ziele. Bei der Code Generierung wird eine voll funktionsfähige und vollständige Applikation generiert, die das Mapping für Sie durchführt. Nachdem Sie den Code generiert haben, können Sie das Mapping ausführen, indem Sie die Applikation, so wie sie generiert wurde, direkt ausführen. Sie können den generierten Code auch in Ihre eigene Applikation importieren oder ihn durch Ihre eigenen Funktionen ergänzen.

 

Hauptaufgabe des generierten Codes ist die Ausführung eines MapForce Mappings. Wenn in Ihrem Mapping XML-Schemas oder DTDs verwendet werden, haben Sie zusätzlich dazu die Möglichkeit, Schema Wrapper-Bibliotheken für im Mapping verwendete XML-Schemas/DTDs zu generieren, wodurch Daten von/aus XML-Instanzen geschrieben oder gelesen werden können. Mit Hilfe von Schema Wrapper-Bibliotheken können Sie programmatisch mit XML-Daten arbeiten und dabei anhand des Schemas generierte Typen verwenden, ohne sich zu sehr um die zugrunde liegende XML API kümmern zu müssen. Nähere Informationen finden Sie unter Generieren von Code anhand von XML-Schemas oder DTDs.

 

Der erzeugte Programmcode wird in den Programmiersprachen C++, Java oder C# ausgegeben.

 

Zielsprache

C++

C#

Java

Entwicklungsumgebungen

Microsoft Visual Studio 2013, 2015, 2017, 2019, 2022

Microsoft Visual Studio 2013, 2015, 2017, 2019, 2022

 

Ziel-Frameworks:

 

.NET Framework

.NET Core 3.1

.NET 5.0

.NET 6.0

Java SE JDK 8, 11, 17, 21 (einschließlich OpenJDK)

Eclipse 4.4 oder höher

Apache Ant (build.xml-Datei)

XML DOM Implementierungen

MSXML 6.0

Apache Xerces 3

System.Xml

JAXP

Datenbank API

ADO

ADO.NET

JDBC

 

 

Anmerkung:Der mit MapForce generierte Code gilt nur dann als threadsicher, wenn es die zugrunde liegenden Drittanbieter-XML DOM und Datenbank API-Bibliotheken sind. Zwar kann die Threadsicherheit des generierten Code nicht wirklich garantiert oder gewährleistet werden, doch lassen sich wahrscheinlich in den meisten Fällen mehrere gleichzeitige Instanzen des Mapping-Code erfolgreich ausführen.

 

C++

Sie können konfigurieren, ob der generierte C++-Ausgabecode MSXML 6.0 oder Apache Xerces 3 verwenden soll. Bei der C++-Codegenerierung werden in MapForce komplette Projekt- (.vcproj) und Solution- (.sln)-Dateien für alle unterstützten Versionen von Visual Studio (siehe Tabelle oben) generiert. Der generierte Code unterstützt optional MFC.

 

Voraussetzungen:

 

1.Für die Kompilierung des generierten C++-Codes muss Windows SDK auf Ihrem Rechner installiert sein.

2.Um Xerces 3 für C++ verwenden zu können, müssen Sie es nach folgender Anleitung installieren und bauen: http://xerces.apache.org/xerces-c/. Dabei muss die Umgebungsvariable XERCES3, die auf das Verzeichnis verweist, in dem Xerces installiert wurde, hinzugefügt werden, z.B: C:\xerces-c-3.2.2. Außerdem muss die Umgebungsvariable PATH den Pfad inkludieren, unter dem sich die Xerces-Binärdateien befinden, z.B: %XERCES3%\bin.

3.Beim Erstellen von C++-Code für Visual Studio und bei Verwendung einer für Visual C++ vorkompilierten Xerces-Bibliothek muss eine Compiler-Einstellung in allen Projekten der Applikation geändert werden:

 

a)Wählen Sie alle Projekte im Solution Explorer aus.

b)Klicken Sie im Menü Projekt auf Eigenschaften.

c)Klicken Sie auf Konfigurationseigenschaften | C/C++ | Sprache.

d)Wählen Sie in der Liste der Konfigurationen Alle Konfigurationen.

e)Ändern Sie Treat wchar_t as Built-in Type in No (/Zc:wchar_t-).

 

C#

Der generierte C#-Code kann von jeder .NET-fähigen Programmiersprache verwendet werden, z.B. VB.NET, Managed C++ oder J#. Projektdateien können für alle unterstützten Versionen von Visual Studio generiert werden (siehe Tabelle oben).

 

Java

Der generierte Java-Code wird anhand der "Java API for XML Processing" (JAXP) geschrieben und enthält eine Ant build-Datei sowie Projektdateien für die unterstützten Versionen von Java und Eclipse (siehe Tabelle oben).

 

Generierte Ausgabe

Der Zielordner für den generierten Code enthält alle zum Ausführen des Mappings erforderlichen Bibliotheken und Dateien. Es sind dies die folgenden:

 

Eine variable Anzahl an für das Mapping erforderlichen Altova-Bibliotheken (z.B. Altova-Funktionsbibliotheken, Datenbankbibliotheken)

Eine komplette Mapping-Applikation. Wenn diese kompiliert und ausgeführt wird, führt sie die Mapping-Transformation durch.

 

Code Generator-Vorlagen

Der generierte Code unterstützt die Anpassung mittels einer Vorlagensprache namens SPL (Spy Programming Language). Dies ist unter Umständen hilfreich, wenn Sie Code z.B. gemäß den Codekonventionen Ihres Unternehmens anpassen möchten oder bestimmte Bibliotheken im generierten Code ersetzen möchten.

 

Code Generator-Beispiele

Beispiele zur Codegenerierung finden Sie unter Beispiel: Book Library und Beispiel: Bestellung.

 

© 2017-2023 Altova GmbH