<< Java Architecture for XML Binding >>

Größe: px
Ab Seite anzeigen:

Download "<< Java Architecture for XML Binding >>"

Transkript

1 JAXB << Java Architecture for XML Binding >> 1

2 Lernziele JAXB Übersicht JAXB Prinzip von Data Binding verstehen Java Klassen aus XSD erzeugen Java Objekte aus XML marschallen bzw. unmarschallen Customized Binding 2

3 Was ist JAXB? JAXB JAXB = Java Architecture for XML Binding JAXB ist ein Standard von SUN bezüglich Java Objekte und XML. ( java.sun.com/xml/jaxb) 3 JAXB enstand aus dem Java Community Process JSR 31 (ca. 2001) MacroMedia BEA HP BreezeFactor Fujitsu webmethods IBM Intalio Oracle Software AG TIBCO Extensibility

4 Eigenschaften von JAXB JAXB Bei JAXB werden die Klassen nicht mehr in Java geschrieben. Sie werden entweder mittels XML Schema oder einer DTD beschrieben. Ein Binding Compiler generiert den Java Source Code anhand von XML Schema oder DTD. JAXB bietet ein Framework um Instanzen dieser generierten Klassen in XML zu marschallen und wieder zurück. 4

5 Prinzip Data Binding bei JAXB JAXB - Prinzip Data Data Structures Structures <xsd> <xsd> <! <! DTD DTD > > Customized Customized Binding Binding <xml> <xml> Binding Compiler Java Java Source Source Code Code Java Compiler Java Java Byte Byte Code Code <xml> <xml> Binding Framework Objekte 5 JAXB erzeugt anhand XSD Java Source Code. Diese Klassen haben die Binding Funktionen schon eingebettet.

6 Prinzip Data Binding bei JAXB JAXB - Prinzip 6

7 JAXB - Prinzip Zusammenspiel von Schema und Objekten b. JAXB 7

8 JAXB - Prinzip Warum Klassen durch XSD oder DTD generieren? Mittels XSD lässt sich fast jede beliebige Datenstruktur beschreiben Das Prinzip lässt sich auch auf andere Technologien anwenden und mit Java kombinieren. z.b. Generierung des Datenmodel einer Datenbank DB Binding Framework Objekte 8 Data Data Model Model [SQL] [SQL] Data Data Structures Structures <xsd> <xsd> Java Java ByteCode ByteCode [class] [class]

9 JAXB beziehen und installieren: JAXB kann bei SUN bezogen werden. Es wird nur zusammen mit dem Java Webservice Development Pack JWSDP ausgeliefert. java.sun.com/webservices/jwsdp/index.jsp JAXB Konfiguration: JAXB - Installation Zurzeit ist das JWSDP ein Package mit eigenem Installer Um das JWSDP bzw. JAXB zu nutzen müssen die Home Environment Variablen angelegt werden. 9 set JAVA_HOME=<your J2SE installation directory> set JWSDP_HOME=<your JWSDP 1.4 installation directory>

10 JAXB - Binding Beispiel einfache Klassen CD Catalog : public class Catalog { Collection cds; } public class Cd { String title; Sting artist; double price; String country; } cds Catalog 0..* Cd title artist price country Set() und Get() Methoden für wurden wegen die wegen der Übersichtlichkeit weggelassen 10

11 JAXB Binding Beispiel einfache Klassen CD Catalog in DTD: <!ELEMENT catalaog (cd*) > <!ELEMENT cd (title, artist, price) > <!ATTLIST cd country CDATA #REQUIRED> <!ELEMENT title (#PCDATA) > <!ELEMENT artist (#PCDATA) > <!ELEMENT price (#PCDATA) > Die DTD lässt eine sehr kompakte Schreibweise zu Mittels der DTD können wir Relationen (0..*) oder (1..*) genauer ausdrücken als in Java. 11 Datentype der Klassenattribute sind aber beschränkt, alles wird zu String

12 JAXB Binding Beispiel einfache Klassen CD Catalog in XSD: 12 <?xml version="1.0" encoding="utf-8"?> <xsd:schema xmlns:xsd=" <xsd:element name="catalog"> <xsd:complextype> <xsd:sequence> <xsd:element name="cd" type="cd" maxoccurs="unbounded" minoccurs="0"/> </xsd:sequence> </xsd:complextype> </xsd:element> <xsd:complextype name="cd"> <xsd:sequence> <xsd:element name="title" type="xsd:string"/> <xsd:element name="artist" type="xsd:string"/> <xsd:element name="price" type="xsd:double"/> </xsd:sequence> <xsd:attribute name="country" type="xsd:string"/> </xsd:complextype> </xsd:schema>

13 Vorteile Beschreibung mittels XSD: JAXB - Binding Bei XSD ist der Syntax nicht so kompakt Mittels XSD können genauere Relationen definiert werden als mit DTD oder Java XSD lässt genauere Datentypen zu als DTD 13

14 Verwendung des Bindings Compilers: Der Binding Compiler kann entweder mittels ANT oder über das mitgelieferte xjc.bat aufgerufen werden Beispiel Aufruf xjc.bat : JAXB Binding Compiler %JWSDP_HOME%\jaxb\bin\xjc.bat -p my.music d gen-src cdcatalog.xsd Parameter Beschreibung -p pack.subpack package für die generierten Klassen -d dir Destinations-Verzeichnis, muss existieren xxxx.xsd Pfad zur XML Schema Datei 14

15 JAXB Binding Compiler 15 Verwendung des Bindings Compilers: Beispiel Ausgabe: %JWSDP_HOME%\jaxb\bin\xjc.bat -d gen-src -p my.music cdcatalog.xsd parsing a schema... compiling a schema... my\music\impl\catalogimpl.java my\music\impl\catalogtypeimpl.java my\music\impl\cdimpl.java my\music\impl\jaxbversion.java my\music\catalog.java my\music\catalogtype.java my\music\cd.java my\music\objectfactory.java my\music\bgm.ser my\music\jaxb.properties ca. 40 Dateien werden generiert!

16 Ausgabe des Binding Compilers: JAXB - Binding JAXB generiert für unsere Objekte jeweils Interfaces, Implementation und Hilfsklassen Wir werden nie direkt die Implementation selber verwenden, sondern nur die Interfaces und Hilfsklassen Catalog Cd ObjectFactory CatalogImpl CdImpl 16

17 JAXB Framework Marshalling mit JAXB 17 // create Factory ObjectFactory factory = new ObjectFactory(); // Build Cd Catalog Catalog cat = factory.createcatalog(); Cd cd = factory.createcd(); cd.setcountry("usa"); cd.setprice(10.90);... cat.getcd().add(cd); // initialise JAXB JAXBContext jc = JAXBContext.newInstance("my.music"); // create a Marshaller Marshaller m = jc.createmarshaller(); // marshal catalog OutputStream os = new FileOutputStream("cdcatalog.xml"); m.marshal( cat, os );

18 Unmarshalling mit JAXB JAXB Framework 18 // initialise JAXB JAXBContext jc = JAXBContext.newInstance("my.music"); // create an Unmarshaller Unmarshaller u = jc.createunmarshaller(); // unmarshal catalog Catalog cat = (Catalog) u.unmarshal( new FileInputStream("cdcatalog.xml")); // Iterate through CD's Iterator it = cat.getcd().iterator(); while(it.hasnext()) { Cd cd = (Cd) it.next(); System.out.println(cd.getTitle()); }

19 Validierung bei Marshalling (1/2): Beispiel im XSD: Der Marshaller von JAXB unternimmt keine Validierung beim marshallen der Objekte. Dies kann zu einer Verletzung des Schemas führen <xsd:element name="cd" type="cd" maxoccurs="unbounded" minoccurs="2"/> Beispiel im Java Code: // Build Cd Catalog with only one CD Catalog cat = factory.createcatalog(); cat.getcd().add(cd); m.marshal( cat, os ); JAXB Framework 19 Auswirkungen wären ungültige XML

20 Validierung bei Marshalling (2/2): JAXB bietet einen Validator um die Objektstruktur gemäss dem Schema zu überprüfen Beispiel im Java Code: JAXB Framework // Build Cd Catalog with only one CD Catalog cat = factory.createcatalog(); cat.getcd().add(cd); // Create Validator Validator validator = jc.createvalidator(); validator.validate(cat); m.marshal( cat, os ); Ausgabe ist eine Exception da mehr CD s erwartet wurden: 20 DefaultValidationEventHandler: [ERROR]: uncompleted content model. expecting: <cd>

21 JAXB Customized Binding JAXB bietet die Möglichkeit das Binding nach eigenen Wünschen anzupassen. Abbildung von XML Elementen Java Bean Package Vererbung Methodennamen Datentypen für Java Bean Attribute Das Customized Binding wird mittels definierten XML Anweisungen beschrieben. Diese Anweisungen können inline im XSD oder als externe Datei realisiert werden. 21

22 JAXB Customized Binding Beispiel einer externen Binding Definition (1/2): <jaxb:bindings xmlns:jaxb=" xmlns:xs=" version="1.0"> <jaxb:bindings schemalocation="cdcatalog.xsd"> <jaxb:bindings <jaxb:class name="compactdisc"/> <jaxb:bindings <jaxb:property name="albumname"/> </jaxb:bindings> </jaxb:bindings> </jaxb:bindings> </jaxb:bindings> 22 Hier wird ein XML Element auf eine anderen Klassennamen gemappt

23 JAXB Customized Binding Beispiel einer externen Binding Definition (2/2): Generiertes Interfaces nach Aufruf des Binding Compilers interface CompactDisc { public void setalbumname(string value); public String getalbumname(); public void setprice(double value); public double getprice(); } public void setartist(string value); public String getartist(); 23

24 JAXB Customized Binding Die wichtigsten Customizing Binding Instruktionen sind: <jaxb:bindings> Root Element oder Beginn einer Definition <jaxb:class> Mapping von einem XSD ComplexType auf Klasse <jaxp:property> Mapping von einem Element oder Attribut auf ein Bean Property <jaxb:javatype> Angaben um spezielle Datentypen von/nach String zu konvertieren 24

25 Deklaration JAXB Customized Binding Aufbau eines externen Bindings (1/3): Root schemalocation bindings node class property javatype bindings node <jaxb:bindings... > <jaxb:bindings schemalocation... > <jaxb:bindings node="[xpath]"> <jaxb:xxxx> </jaxb:bindings> <jaxb:bindings node="[xpath]"/> 25 schemalocation </jaxb:bindings> <jaxb:bindings schemalocation... /> </jaxb:bindings>

26 JAXB Customized Binding Aufbau eines externen Bindings (2/3): Externe Binding Defintionen beginnen mit dem Root <jaxb:bindings>. Der Namespace und die Version ist dabei zwingend <jaxb:bindings xmlns:jaxb=" xmlns:xsd=" version="1.0"> Danach wird auf das jeweilige Schema mit einem <jaxb:bindings schemalocation> verwiesen 26 <jaxb:bindings xmlns:jaxb=... > <jaxb:bindings schemalocation="path.to.schema.xsd">... </jaxb:bindings> </jaxb:bindings>

27 JAXB Customized Binding Aufbau eines externen Bindings (3/3): Die Binding Definition besteht aus verschiedenen Mapping Instruktionen. Die Beziehung zwischen diesen Instruktionen und dem XSD wird mittels XPath festgelegt. <jaxb:bindings xmlns:jaxb=... > <jaxb:bindings schemalocation="..."> 27 <jaxb:bindings <jaxb:class name="compactdisc"/> <jaxb:bindings <jaxb:property name="albumname"/> </jaxb:bindings> </jaxb:bindings>... </jaxb:bindings>

28 JAXB Customized Binding Aufruf des Binding Compilers bei externem Binding: Die externe Binding Definition wird beim Aufruf des Binding Compilers mit einem separaten Parameter -b angegeben: %JWSDP_HOME%\jaxb\bin\xjc.bat -b cdcatalog.jbx cdcatalog.xsd 28

29 JAXB Customized Binding Beispiel einer inline Binding Definition (1/2): <xsd:complextype name="cd"> <xsd:attribute name="country" type="xs:string"> <xsd:annotation> <xsd:appinfo> <jaxb:property name="isocountry"/> </xsd:appinfo> </xsd:annotation> </xsd:attribute> </xsd:complextype> Die Binding Instruktionen werden mittels <xsd:annotation> in das Schema eingebettet 29 Sie werden jeweils für jedes Element separat angegeben

30 JAXB Customized Binding Beispiel einer inline Binding Definition (2/2): <xs:complextype name="cd"> <xs:attribute name="country" type="xs:string"> <xs:annotation> <xs:appinfo> <jaxb:property name="isocountry"/> </xs:appinfo> </xs:annotation> </xs:attribute> public interface Cd </xs:complextype> { public void setisocountry(string c); public String getisocountry(); } 30 Hier wird ein XML Attribut auf ein bestimmtes Java Bean Property gemappt

31 JAXB - Links Sun: JAXB Sun: Java Web Service Tutorial xml.com: The JAXB API On Java: Understanding JAXB IBM: Data Binding with JAXB 31

XML Schema und Objektorientierung

XML Schema und Objektorientierung XML Schema und Objektorientierung XML Schema und Objektorientierung Einführung.NET Java Einführung: Einsatzbereiche In folgenden Situationen kann eine sehr enge und ähnliche Abbildung von Daten Sinn machen:

Mehr

JAXB. Java Architecture for XML Binding.

JAXB. Java Architecture for XML Binding. JAXB Java Architecture for XML Binding http://jaxb.java.net Warum JAXB? JAXB ist eine schnelle und einfache Methode, um ein XML Schema mit einer Java Repräsentation zu verbinden. Damit ist es sehr einfach,

Mehr

XSD - XML Schema Definition

XSD - XML Schema Definition XSD - XML Schema Definition Definieren von XML-Dokumenten Michael Dienert 15. September 2016 Inhaltsverzeichnis 1 Was sind XSD Dateien und warum soll man das lernen? 1 1.1 XSD Dateien und Anwendungen....................

Mehr

Programmieren II SAX. Beispiel-Schema kontakt.xsd SAX DOM. Dr. Klaus Höppner JAXB. Hochschule Darmstadt SS 2008

Programmieren II SAX. Beispiel-Schema kontakt.xsd SAX DOM. Dr. Klaus Höppner JAXB. Hochschule Darmstadt SS 2008 Programmieren II SAX Dr. Klaus Höppner DOM Hochschule Darmstadt SS 2008 JAXB 1 / 21 2 / 21 SAX SAX (Simple API for XML) ist eine ereignisorientierte Methode zum Parsen von XML-Dateien. Dies bedeutet, das

Mehr

Angewandte Softwareentwicklung Serialisierung

Angewandte Softwareentwicklung Serialisierung Angewandte Softwareentwicklung Serialisierung WS 2014/2015 Markus Berg Hochschule Wismar Fakultät für Ingenieurwissenschaften Bereich Elektrotechnik und Informatik [email protected] http://mmberg.net

Mehr

XML, XML-DTDs, und XML Schema

XML, XML-DTDs, und XML Schema Eidgenössische Technische Hochschule Zürich Swiss Federal Institute of Technology Zurich Institut für Informationssysteme Dr. C. Türker XML und Datenbanken WS 03/04 Übung 3 Beispiellösung XML, XML-DTDs,

Mehr

JAXB 2.0. Samuel Michaelis, Wolfgang Schmiesing. Ein Programmiertutorial für die Java Architecture for XML Binding ISBN

JAXB 2.0. Samuel Michaelis, Wolfgang Schmiesing. Ein Programmiertutorial für die Java Architecture for XML Binding ISBN JAXB 2.0 Samuel Michaelis, Wolfgang Schmiesing Ein Programmiertutorial für die Java Architecture for XML Binding ISBN 3-446-40753-7 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40753-7

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

Mehr

Java API for XML Binding

Java API for XML Binding Java API for XML Binding Eine Einführung Tim Speier Fachbereich MNI Fachhochschule Gießen-Friedberg 24. Juni 2010 1 / 27 XM und Java Teil 1: Aufgabenstellung Aufgabenstellung: In einem XML-Dokument werden

Mehr

Java und XML Grundlagen, Einsatz, Referenz

Java und XML Grundlagen, Einsatz, Referenz Stephan Niedermeier Michael Scholz 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Java und XML Grundlagen, Einsatz,

Mehr

CLICK TO EDIT MASTER TITLE STYLE

CLICK TO EDIT MASTER TITLE STYLE CLICK TO EDIT MASTER TITLE STYLE AUTOMATISCHE ERZEUGUNG VON BENUTZEROBERFLÄCHEN UND DATENHALTUNG FÜR DIE KONFIGURATION VON FELDGERÄTEN Diplomverteidigung Betreuer (Firma ubigrate): Dipl.-Inform. Falk Hartmann

Mehr

XML Schema vs. Relax NG

XML Schema vs. Relax NG XML Schema vs. Relax NG p. 1/2 XML Schema vs. Relax NG Semistrukturierten Daten 1 Präsentation der Gruppe 2 XML Schema vs. Relax NG p. 2/2 Wozu XML Schema? W3C Empfehlung zur Definition von XML-Dokumentstrukturen

Mehr

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren 1. XML Grundbegriffe XML = extensible Markup Language Metasprache um Dokumenttypen zu definieren XML Baum

Mehr

Java Einführung Vererbung und Polymorphie. Kapitel 13

Java Einführung Vererbung und Polymorphie. Kapitel 13 Java Einführung Vererbung und Polymorphie Kapitel 13 Inhalt Klassifikation (UML) Implementierung von Vererbungshierarchien Überschreiben von Methoden Polymorphismus: Up-Casting und Dynamisches Binden Schlüsselwort

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für Grundlagen Dr. E. Schön FH Erfurt Sommersemester 2015 Seite 135 Programmierschnittstelle Notwendigkeit: Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für für Medientechnologen Dr. E. Schön Wintersemester 2015/16 Seite 146 Notwendigkeit: Programmierschnittstelle Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Auszug aus JAX-WS Folien

Auszug aus JAX-WS Folien Auszug aus JAXWS Folien Dieses Dokument ist ein Auszug aus unserem Skript zur Java Web Services Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Hauptstraße 33 75050 Gemmingen

Mehr

JAXB 2.0. Ein Programmiertutorial für die Java Architecture for XML Binding. von Samuel Michaelis, Wolfgang Schmiesing. 1. Auflage

JAXB 2.0. Ein Programmiertutorial für die Java Architecture for XML Binding. von Samuel Michaelis, Wolfgang Schmiesing. 1. Auflage JAXB 2.0 Ein Programmiertutorial für die Java Architecture for XML Binding von Samuel Michaelis, Wolfgang Schmiesing 1. Auflage JAXB 2.0 Michaelis / Schmiesing schnell und portofrei erhältlich bei beck-shop.de

Mehr

XML Kurs 2005-8 LRZ 1

XML Kurs 2005-8 LRZ 1 XML Kurs 2005-8 LRZ 1 Inhalt 2005-8 LRZ 2 Werbung 1: XML steht für strukturierte Daten March 2008 2005-8 LRZ 3 Werbung 2: XML ist lizenzfrei, plattformunabhängig und gut unterstützt March 2008 2005-8 LRZ

Mehr

WebServices -reloaded-

WebServices -reloaded- WebServices -reloaded- Jan Krüger Bielefeld Bioinformatics Service Institute of Bioinformatics CeBiTec Bielefeld University [email protected] 3 Juli 2007 Übersicht Motivation Was sind WebServices?

Mehr

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire Integration von Web Services in J EE Anwendungen mit XFire 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire univativ : = Umsetzung durch Studenten und Young Professionals.

Mehr

Web Service Entwicklung mit Java. Sven Lindow

Web Service Entwicklung mit Java. Sven Lindow Web Service Entwicklung mit Java Sven Lindow 22.11.2006 Agenda Einleitung SOAP, REST, WSDL, UDDI Web Services mit Java JWSDP JAX-RPC, JAX-WS 2.0 AXIS, AXIS2 Web Services nutzen Google, Ebay Web Services

Mehr

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL Seminar E-Services WS 02/03 WSDL Web Services Description Language SES 02 - WSDL Zum Ablauf Einleitung Webservices und WSDL Grundlagen (XML - Schema und Namespaces) WSDL Syntax Beispiel Zusammenfassung

Mehr

Das Build Tool Ant. Sebastian Mancke, [email protected]

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de Das Build Tool Ant Sebastian Mancke, [email protected] Grundlagen Motivation Bei der Übersetzung und Pflege von Software treten viele, gleich bleibende Arbeitsschritte auf. Übersetzen des Codes

Mehr

Peter Huster

Peter Huster //@author: Peter Huster 1 2 Hervorgegangen aus JCP mittlerweile Bestandteil von Java (6) Java Klassen werden mit jeder Menge an Annotation bestückt um JAXB mit Informationen zu füttern Schema-Compiler

Mehr

XML, FI und JSON strukturiert in Java verwenden. Wolfgang Nast

XML, FI und JSON strukturiert in Java verwenden. Wolfgang Nast XML, FI und JSON strukturiert in Java verwenden Wolfgang Nast Agenda Java und XML FastInfoset JSON Zusammenfassung 2 XML in Oracle 12c Im Überblick Technologie-orientiert Branchen-unabhängig Hauptsitz

Mehr

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder Java: Kapitel 1 Überblick Programmentwicklung WS 2008/2009 Holger Röder [email protected] Was ist Java? Die Java-Technologie umfasst die Programmiersprache Java sowie die Java-Plattform

Mehr

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg Klassen und Objekte Einführung in Java Folie 1 von 28 12. Mai 2011 Ivo Kronenberg Inhalt Objekte Klassendefinitionen Datenelemente (Klassenattribute) Instanzieren von Objekten Konstruktoren Vergleich primitive

Mehr

Nonstandard Datenbanken

Nonstandard Datenbanken Prof. Dr. V. Linnemann Nils Höller Universität zu Lübeck Institut für Informationssysteme Lübeck, den 02. Februar 2009 Nonstandard Datenbanken Wintersemester 2008/2009 13. Übungsblatt: Probe-Klausur Hinweise:

Mehr

Java für C++ Programmierer

Java für C++ Programmierer Java für C++ Programmierer Alexander Bernauer [email protected] Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 27 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 27 1 Überblick: Klassen als Datenstruktur 2 Vereinbarung

Mehr

Berner Fachhochschule Software Schule Schweiz JDOM. http://www.jdom.org/ Beatrice Amrhein. Oktober 06

Berner Fachhochschule Software Schule Schweiz JDOM. http://www.jdom.org/ Beatrice Amrhein. Oktober 06 Berner Fachhochschule Software Schule Schweiz JDOM http://www.jdom.org/ Beatrice Amrhein Oktober 06 1 Motivation JDOM ist ein Open Source, Baumbasiertes, Java API zum Parsen, Erzeugen, Verarbeiten und

Mehr

Java Metadata Interface. Thorsten Pivl

Java Metadata Interface. Thorsten Pivl Java Metadata Interface Thorsten Pivl Einleitung Was sind Metadaten? Das Wort Meta stammt aus dem griechischen und bedeutet über Meta-Daten: Daten über Daten Beschreibung von Daten 2 Einleitung Warum Metadaten?

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten)

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) O/R Mapping - Objekte (Attribute) - 1:1, 1:n, n:m Beziehungen - Vererbungen (- Interfaces)

Mehr

Projekt Weblog :: Integration

Projekt Weblog :: Integration Projekt Weblog :: Integration Die Implementation des Formhandling Frameworks wird nun im Projekt Weblog integriert. Dafür stehen 2 Möglichkeiten zur Auswahl. Sie haben Ihre eigene Implementation der Actions,

Mehr

7. Übung Informatik II - Objektorientierte Programmierung

7. Übung Informatik II - Objektorientierte Programmierung 7. Übung Informatik II - Objektorientierte Programmierung 29. Mai 2015 Inhalt 1 2 3 Übersicht 1 2 3 Idee Menschen nehmen die Welt in Form von Objekten wahr manche Objekte haben gleiche Eigenschaften, hierüber

Mehr

Kurzanleitung zu XML2DB

Kurzanleitung zu XML2DB Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines

Mehr

Java: Der Einstieg. Algorithmen und Datenstrukturen II 1

Java: Der Einstieg. Algorithmen und Datenstrukturen II 1 Java: Der Einstieg Algorithmen und Datenstrukturen II 1 Grundlegendes zu Java: Historisches 1990-1991: Entwicklung der Programmiersprache OAK durch James Gosling von Sun Microsystems (zunächst für Toaster,

Mehr

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur

Mehr

Java Einführung Methoden in Klassen

Java Einführung Methoden in Klassen Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding

Mehr

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Übung 1 mit C# 6.0 MATTHIAS RONCORONI Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,

Mehr

10. OLAPLINE-Anwendertreffen

10. OLAPLINE-Anwendertreffen 10. OLAPLINE-Anwendertreffen 26. und 27. April 2017 Schloss Garath Düsseldorf Zwei Tage Weiterbildung und Networking integriert: Vorträge, Workshops und Erfahrungsaustausch rund um TM1 JAVA EXTENSIONS

Mehr

Axis2, CXF und JAX-WS RI im Vergleich

Axis2, CXF und JAX-WS RI im Vergleich Axis2, CXF und JAX-WS RI im Vergleich Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de [email protected] Gliederung Die Standards: JWS, JAXB und JAX-WS Axis2 Apache CXF JAX-WS RI und

Mehr

Klassen als Datenstrukturen

Klassen als Datenstrukturen Einstieg in die Informatik mit Java, Vorlesung vom 27.11.07 Übersicht 1 Klassen als Datenstruktur 2 Vereinbarung von Klassen 3 Erzeugen von Objekten - Instanzen einer Klasse 4 Zugriff auf Attribute 5 Initialisierung

Mehr

WER ERZÄHLT DIE NÄCHSTEN 55+ MINUTEN ETWAS?

WER ERZÄHLT DIE NÄCHSTEN 55+ MINUTEN ETWAS? WER ERZÄHLT DIE NÄCHSTEN 55+ MINUTEN ETWAS? Gerrit Brehmer, Karlsruhe Auf der Arbeit: Software-Entwickler/Architekt ( / Projektleiter) bei der inovex GmbH In der Freizeit: Smart Home BEAN-MAPPING: EINSATZ

Mehr

Java Einführung Collections

Java Einführung Collections Java Einführung Collections Inhalt dieser Einheit Behälterklassen, die in der Java API bereitgestellt werden Wiederholung Array Collections (Vector, List, Set) Map 2 Wiederholung Array a[0] a[1] a[2] a[3]...

Mehr

Modell/Metamodell. Generated Source Code. Generator. Model. Fakultät für Informatik und Wirtschaftsinformatik MDSD - SS 2014

Modell/Metamodell. Generated Source Code. Generator. Model. Fakultät für Informatik und Wirtschaftsinformatik MDSD - SS 2014 Modell/Metamodell Model Generator Generated Source Code Andreas Schmidt Modellierung 1/18 Modell Modell beschreibt die zu generierende Anwendung Modell ist... abstrakt kompakt formal Modell kann in unterschiedlichen

Mehr

Persistenz. Ralf Gitzel

Persistenz. Ralf Gitzel Persistenz Ralf Gitzel [email protected] 1 Themenübersicht Ralf Gitzel [email protected] 2 Übersicht Grundkonzepte Entity Beans Meine erste Entity Entity-Manager Lernziele Übungsaufgabe 3 Grundkonzepte

Mehr

XML-Praxis. XML Übungen. Jörn Clausen

XML-Praxis. XML Übungen. Jörn Clausen XML-Praxis XML Übungen Jörn Clausen [email protected] eine CD-Sammlung mit XML Aufgabe: Beschreibe eine Sammlung von CDs mit Hilfe von XML erfaßt werden sollen (zunächst): Titel der CD Künstler

Mehr

Java Web Services Metadata JSR-181

Java Web Services Metadata JSR-181 Java Web Services Metadata JSR-181 Dieses Dokument ist ein Auszug aus unserem Skript zur Java Web Services Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Albertus-Magnus-Str.

Mehr

Informatik B. Vorlesung 14 Serialisierung, Autoboxing. Dr. Ralf Kunze

Informatik B. Vorlesung 14 Serialisierung, Autoboxing. Dr. Ralf Kunze Vorlesung 14 Serialisierung, Autoboxing 1 Serialisierung von Objekten Die Objekte innerhalb eines Java-Programmes sollen manchmal auch nach Beendigung der JVM verfügbar bleiben Objekte müssen ab und an

Mehr

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1 Web Services XML, WSDL, SOAP und UDDI Einblicke und Ausblicke 31.03.2003 J.M.Joller 1 Inhalt Architekturen Main Stream.NET J2EE und Applikations-Server Sicht der Anbieter Java J2EE J2EE versus.net Web

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 24 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 24 1 Klassen als Datenstruktur 2 Vereinbarung von

Mehr

Analyse der Datenkommunikation zur drahtlosen Steuerung eines NAO Roboters durch ein Android Gerät

Analyse der Datenkommunikation zur drahtlosen Steuerung eines NAO Roboters durch ein Android Gerät Analyse der Datenkommunikation zur drahtlosen Steuerung eines NAO Roboters durch ein Android Gerät Seminarvortrag am 17. Januar 2014 Gerrit Kieffer Rechen- und Kommunikationszentrum (RZ) Gliederung Motivation

Mehr

Gregor Raschke 2008 HIBERNATE. Eine Einführung

Gregor Raschke 2008 HIBERNATE. Eine Einführung 1 HIBERNATE Eine Einführung Inhalt 2 Einleitung Beispielkonfiguration Die hibernate.cfg.xml Eine Beispieltransaktion Abfragemöglichkeiten JPA und Hibernate Ressourcen und Quellen Einleitung (1) - Geschichtliches

Mehr

6 Zusammenschaltung von Web-Services

6 Zusammenschaltung von Web-Services 6 Zusammenschaltung von Web-Services Komposition von Web-Services zu neuen Web-Services abstrakte Beschreibung der internen Struktur Workflow-Konzept abstrakte Beschreibung der Zusammenhänge und Interaktionen

Mehr

Szenario 3: Service mit erweiterter Schnittstelle

Szenario 3: Service mit erweiterter Schnittstelle 2. Hintergrundverarbeitung in Android: Services und Notifications Szenarien für lokale Services Szenario 3: Service mit erweiterter Schnittstelle Ein Service bietet zusätzliche Methoden an, über die sich

Mehr

ASN.1 <-> XML TRANSLATION

ASN.1 <-> XML TRANSLATION ASN.1 XML TRANSLATION Management Verteilter Systeme Patrick Gerdsmeier, Pierre Smits Wintersemester 2003/2004 Lehrstuhl für Systeme Prof. Dr. Kraemer BTU Cottbus ASN.1 XML TRANSLATION Gliederung

Mehr

Einführung in Javadoc

Einführung in Javadoc Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:

Mehr

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Soll ich Modellieren oder Programmieren? sowohl als auch!!! Produktivitäts-Steigerung

Mehr

Kapitel 14. Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) Prof. Dr. Wolfgang Weber Vorlesung Datenbanken

Kapitel 14. Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) Prof. Dr. Wolfgang Weber Vorlesung Datenbanken Kapitel 14 Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) 1 Wozu Objekt-relationales Mapping? - Problematik - Business-Schicht OO-Klassen Unvereinbarkeit der Paradigmen

Mehr

Klausur Grundlagen der Programmierung

Klausur Grundlagen der Programmierung Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel

Mehr

Programmieren mit Edipse 3

Programmieren mit Edipse 3 Michael Seeboerger-Weichselbaum Programmieren mit Edipse 3 Universelle Entwicklungsplattform für Java, PHP, C/C++, SQL, XML, XSLT, XSL-FO, JSP, Servlets, J2EE, UML, HTML, CSS, JavaScript I n halts verzeich

Mehr

WebService in Java SE und EE

WebService in Java SE und EE Schlüsselworte Java, JAX-WS, JAX-RS, JAXB, XML. Einleitung WebService in Java SE und EE Wolfgang Nast MT AG Ratingen Es werden die Mölichkeiten von WebServices in Java SE und EE, mit SOAP und REST gezeigt.

Mehr

Grundlagen der Informatik 0

Grundlagen der Informatik 0 Technische Universität Darmstadt 01.07.2013 Grundlagen der Informatik 0 Vorlesung 0 Java ist eine Programmiersprache Ilkay Baytekin Douglas Crockford http://media.smashingmagazine.com/wp-content/uploads/2012/04/doug-crockford-image.jpg

Mehr

JBuilder 5 und XML. Inhalt. XML - Konfiguration von JBuilder. XML - Umwandlung und Validierung. Web - Publishing mit Cocoon

JBuilder 5 und XML. Inhalt. XML - Konfiguration von JBuilder. XML - Umwandlung und Validierung. Web - Publishing mit Cocoon JBuilder 5 und XML Michael Schmut Thomas Forster [email protected] Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de 1 Inhalt XML - Konfiguration von JBuilder XML - Umwandlung und Validierung

Mehr