Objekt/XML-Mapping mit Jakarta XML Binding (JAXB)
Mit ›Jakarta XML Binding‹ (JAXB) können Objekte effizient in XML-Dokumente übertragen werden, ohne dass aufwändiges Verarbeiten von XML-Dokumenten mit StAX oder SAX erforderlich ist. Das Mapping von XML-Daten auf eigene POJO-Klassen wird erheblich vereinfacht. In dieser praxisorientierten JAXB-Schulung wird anhand zahlreicher Beispiele gezeigt, wie die Technologie für die Objekt-/XML-Abbildung optimal genutzt werden kann. Der Kurs beginnt mit den Annotationen, mit denen aus annotierten Java-Klassen des Datenmodells das gewünschte XML-Format erzeugt werden kann. Anschließend wird der Generator xjc
vorgestellt, der es ermöglicht, aus Schema-beschriebenen XML-Dokumenten automatisch JavaBeans zu generieren. Zum Abschluss wird die Konfiguration der JAXB-Umgebung behandelt, um eine reibungslose Integration in verschiedene Projekte zu gewährleisten.
Inhalte des Seminars
Einführung in JAXB
- Objekt/XML-Mapping und XML-Serialisierung
- Wege Schema-to-Java und Java-to-Schema
- Evolution JAXB 1 und bis JAXB 2, JAXB 4, JAXB RI
- JAXB-Generatoren, JAXB-Plugins für Entwicklungsumgebungen
- Erstes Beispiel
- Alternativen zu JAXB: Jackson, XmlBeans, XML-Serialisierung mit XStream
- JAXB Eclipse Plugin
JAXB-API
- Paket
javax.xml.bind
und Unterpakete JAXBContext
JAXBIntrospector
ObjectFactory
Marshaller
undUnmarshaller
- Validierung: Standard-Validierung und benutzerdefinierte Validierung
- Callback/Listener
Aus XML-Schema JavaBeans generieren
- Annotated XSD
- Typkonvertierungen XML in Java
- Externe Binding-Configuration
- Globale, Schema-spezifische und Komponenten-spezifische Einstellungen
- Optionen von Tools
xjc
, Einbinden in Maven/Gradle - Anpassen von Aufzählungen, Paketnamen
- Anpassen von Klassen über
jaxb:class
- Dokumentieren über Javadoc
- XML-Bezeichner anpassen: Namenskonflikte vermeiden,
<jxb:nameXmlTransform>
- Datentypen anpassen:
<jaxb:baseType>
und<jaxb:javaType>
Annotierte Java-Klassen in XML abbilden
- Schema-loses
JAXBContext
undJAXBElement
- Wurzelelement und andere Properties beschreiben
- Mapping über Setter/Getter oder Attribute?
- Aufzählungen behandeln
- Assoziationen und Sammlungen abbilden: Listen, Maps
- Eigene Typbindungen
XmlAnyAttribute
undXmlAnyElement
JAXB in Webservices
- Metro-Projekt aus GlassFish
- JAX-WS 2.0/2.1 (JSR 224)
- Webservices definieren, Annotationen
- Endpoint-API
JAXB Erweiterungen
- JAXB Commons Project: Fluent API, CamelCase, Default Value, Property listener …
- Annox
- Hyperjaxb3
Termine / Kontakt
Jedes Seminar führt tutego als kundenangepasstes Inhouse-Seminar durch.
Alle unsere Seminare können zudem als Live-Online-Seminar besucht werden.
Wir helfen Ihnen gerne bei der Anmeldung und einen passenden Termin zu finden. Kontaktieren Sie uns per E-Mail oder unter 0800/tutegos (kostenlos aus allen Netzen).
Die Fakten
- Empfohlene Schulungsdauer: 2 Tage, insgesamt 16 Unterrichtsstunden à 45 Minuten
- Zielgruppe: Software-Entwickler
- Vorkenntnisse: Der Kurs ›Java für Fortgeschrittene‹ oder ›Java für Umsteiger‹ und ›XML Überblick‹ oder vergleichbare Kenntnisse.
- Schulungsunterlagen: › JAXB 2.0: Ein Programmiertutorial für die Java Architecture for XML Binding‹ und Teilnehmerzertifikat
- Seminar-Software: Java 21 ist die Standardversion, die in Verbindung mit der IntelliJ IDEA (Community-Edition) verwendet wird. Auf Wunsch auch die Eclipse IDE (Paket ›Eclipse IDE for Enterprise Java Developers‹).
Weiterführende Seminare
Refactoring, Design Pattern (Entwurfsmuster) in Java, Effektiv Java programmieren