Map Reduce. Programmiermodell. Prof. Dr. Ingo Claÿen. Motivation. Modell. Verarbeitungsablauf. Algorithmen-Entwurf. Map-Reduce in Java

Größe: px
Ab Seite anzeigen:

Download "Map Reduce. Programmiermodell. Prof. Dr. Ingo Claÿen. Motivation. Modell. Verarbeitungsablauf. Algorithmen-Entwurf. Map-Reduce in Java"

Transkript

1 Map Reduce Programmiermodell Prof. Dr. Ingo Claÿen Hochschule für Technik und Wirtschaft Berlin Motivation Modell Verarbeitungsablauf Algorithmen-Entwurf Map-Reduce in Java

2 Motivation Was ist Map-Reduce Programmiermodell für verteilte Verarbeitung auf groÿen Datenmengen Ausführungsmodell für parallele Ausführung auf Cluster einfacher Servermaschinen (comodity server) Entwickelt von Google Map Reduce Ingo Claÿen 2/25

3 Motivation Warum? Groÿe Datenmengen sind Fakt Systeme müssen diese verarbeiten Datenerzeuger Web oder Teile davon Sensorsysteme: z.b. Infrastruktur wie Straÿen, Brücken Web-basierte Geschäftsmodelle (Startups) Analytik Datamining (Text, Bilder, Video) Maschinelles Lernen Echtzeit-Reaktionen Map Reduce Ingo Claÿen 3/25

4 Motivation Enorme Datengröÿen Google: 20PB pro Tag ebay: 6.5 PB, Zunahme 150 Milliarden Datensätze pro Tag Facebook: 2,5 PB Nutzerdaten, Zunahme 15 TB pro Tag Map Reduce Ingo Claÿen 4/25

5 Motivation Weitere Beispiele Teilchenphysik: Large Hadron Collider, 15PB/Jahr Astronomie: Sloan Digital Sky Survey, 3.2 Gigapixel-Kamera, 0,5PB/Monat Bioinformatik: DNA-Sequenzierung, PB-Datenbankgröÿen Telematik: Detaildaten von Verkehrsüssen (Sensorik) Map Reduce Ingo Claÿen 5/25

6 Modell Verarbeitungsprinzipien Horizontale nahtlose Skalierbarkeit. Scale out, not up Fehler treten häug auf Sende Programme an die Daten, nicht umgekehrt Verarbeitung der Daten in sequenziellen Blöcken Programiermodell, das vor der Komplexität paralleler Verarbeitung abschirmt Map Reduce Ingo Claÿen 6/25

7 Modell Theoretisches Verarbeitungsmodell: Funktionale Programmierung map reduce + = 182 Map Reduce Ingo Claÿen 7/25

8 Modell Praktisches Verarbeitungsmodell Schlüssel-Wert-Paare map : K 1 V 1 List[K 2 V 2 ] reduce : K 2 List[V 2 ] List[K 3 V 3 ] Verarbeitungsphasen 1. Map 2. Shue (Partitionierung, Sortierung) 3. Reduce Map Reduce Ingo Claÿen 8/25

9 Verarbeitungsablauf Map F K F K F -K F K F K F K F -K F K F -K F K F -K F K F 4 FK 3 F-K 1 F 5 FK 3 F-K 2 F 3 FK 2 F-K 1 F=hat Fieber K=ist krank -F=hat kein Fieber -K=ist nicht krank Map Reduce Ingo Claÿen 9/25

10 Verarbeitungsablauf Shue F 4 FK 3 F-K 1 F 5 FK 3 F-K 2 F 3 FK 2 F-K 1 F 4, 5, 3 FK 3, 3, 2 F-K 1, 2, 1 F=hat Fieber K=ist krank -F=hat kein Fieber -K=ist nicht krank Map Reduce Ingo Claÿen 10/25

11 Verarbeitungsablauf Reduce F 4, 5, 3 FK 3, 3, 2 F-K 1, 2, 1 F 12 FK 8 F-K 4 F=hat Fieber K=ist krank -F=hat kein Fieber -K=ist nicht krank Map Reduce Ingo Claÿen 11/25

12 Verarbeitungsablauf Technische Umsetzung Map Reduce Ingo Claÿen 12/25

13 Verarbeitungsablauf Combiner Map Reduce Ingo Claÿen 13/25

14 Algorithmen-Entwurf WordCount class Mapper { map(docid: Str, doc: Str) { for(word: doc.split(",")) { emit(word, 1) class Reducer { reduce(word: Str, countlist: List[Int]) { sum = 0 for(count: countlist) { sum += count emit(word, sum) Map Reduce Ingo Claÿen 14/25

15 Algorithmen-Entwurf WordCount In Mapper Combining 1 Veringerung der Key/Value-Paare pro Dokument class Mapper { map(docid: Str, doc: Str) { f = Func[Str,Int]() for(word: doc.split(",")) { f.putreplace(word, 1, f.get(word) + 1) for(word: f.keyset()) { emit(word, f.get(word)) Map Reduce Ingo Claÿen 15/25

16 Algorithmen-Entwurf WordCount In Mapper Combining 2 Veringerung der Key/Value-Paare dokumentenübergreifend class Mapper { f: Func[Str,Int] setup() { f = Func[Str,Int]() map(docid: Str, doc: Str) { for(word: doc.split(",")) { f.putreplace(word, 1, f.get(word) + 1) cleanup() { for(word: f.keyset()) { emit(word, f.get(word)) Map Reduce Ingo Claÿen 16/25

17 Algorithmen-Entwurf Mittelwertberechnung class Mapper { map(key: Str, value: Int) { emit(key, value) class Reducer { reduce(key: Str, valuelist: List[Int]) { sum = 0 cnt = 0 for(value: valuelist) { sum += value cnt += 1 emit(key, sum / count) Map Reduce Ingo Claÿen 17/25

18 Algorithmen-Entwurf Mittelwertberechnung Combiner Mittelwertbildung ist nicht komponierbar X = [x 1,..., x k ] und Y = [y 1,..., y n ] avg(x + Y ) avg(avg(x ), avg(y )) Daher muss der Combiner ein Paar aus Summe und Anzahl abliefern class Combiner { combine(key: Str, valuelist: List[Int]) { sum = 0 cnt = 0 for(value: valuelist) { sum += value cnt += 1 emit(key, Pair[Int,Int](sum, count)) Map Reduce Ingo Claÿen 18/25

19 Algorithmen-Entwurf Mittelwertberechnung Veränderter Reducer Bekommt als Werteliste eine Liste von Paaren class Reducer { reduce(key: Str, sumcountlist: List[Pair[Int,Int]]) { sum = 0 cnt = 0 for(pair: sumcountlist) { sum += pair.1 cnt += pair.2 emit(key, sum / count) Achtung: Ist nicht mehr mit dem Mapper kompatibel Map Reduce Ingo Claÿen 19/25

20 Algorithmen-Entwurf Mittelwertberechnung Angepasster Mapper/Combiner class Mapper { map(key: Str, value: Int) { emit(key, Pair[Int,Int](value, 1)) class Combiner { combine(key: Str, valuelist: List[Pair[Int,Int]]) { sum = 0 cnt = 0 for(pair: sumcountlist) { sum += pair.1 cnt += pair.2 emit(key, Pair[Int,Int](sum, count)) Map Reduce Ingo Claÿen 20/25

21 Algorithmen-Entwurf Mittelwertberechnung Mapper mit In-Memory Combining class Mapper { f: Func[Str,Int] setup() { fsum = Func[Str,Int]() fcount = Func[Str,Int]() map(key: Str, value: Str) { fsum.putreplace(key, value, fsum.get(key) + value) fcount.putreplace(key, 1, fcount.get(key) + 1) cleanup() { for(key: fsum.keyset()) { emit(key, Pair[Int,Int](fsum.get(key), fcount.get(key)) Map Reduce Ingo Claÿen 21/25

22 Map-Reduce in Java Mapper in Java public static class Map extends Mapper<LongWritable, Text, Text, IntWritable> { private final static IntWritable one = new IntWritable(1); private Text word = new Text(); public void map(longwritable key, Text value, Context context) throws IOException, InterruptedException { String line = value.tostring(); StringTokenizer tokenizer = new StringTokenizer(line); while (tokenizer.hasmoretokens()) { word.set(tokenizer.nexttoken()); context.write(word, one); Map Reduce Ingo Claÿen 22/25

23 Map-Reduce in Java Reducer in Java public static class Reduce extends Reducer<Text, IntWritable, Text, IntWritable> { public void reduce(text key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException { int sum = 0; for (IntWritable val : values) { sum += val.get(); context.write(key, new IntWritable(sum)); Map Reduce Ingo Claÿen 23/25

24 Map-Reduce in Java Jobsteuerung in Java public class WordCount extends Configured implements Tool { public static class Map... public static class Reduce... public int run(string[] args) throws Exception { Job job = new Job(getConf()); job.setjarbyclass(wordcount.class); job.setjobname("wordcount"); job.setoutputkeyclass(text.class); job.setoutputvalueclass(intwritable.class); job.setmapperclass(map.class); job.setcombinerclass(reduce.class); job.setreducerclass(reduce.class); Map Reduce Ingo Claÿen 24/25

25 Map-Reduce in Java Jobsteuerung in Java - Fortsetzung job.setinputformatclass(textinputformat.class); job.setoutputformatclass(textoutputformat.class); FileInputFormat.setInputPaths(job, new Path("words.txt")); FileOutputFormat.setOutputPath(job, new Path("out")); boolean success = job.waitforcompletion(true); return success? 0 : 1; public static void main(string[] args) throws Exception { int res = ToolRunner.run(new Configuration(), new WordCount(), args); System.exit(res); Map Reduce Ingo Claÿen 25/25

Hadoop. Eine Open-Source-Implementierung von MapReduce und BigTable. von Philipp Kemkes

Hadoop. Eine Open-Source-Implementierung von MapReduce und BigTable. von Philipp Kemkes Hadoop Eine Open-Source-Implementierung von MapReduce und BigTable von Philipp Kemkes Hadoop Framework für skalierbare, verteilt arbeitende Software Zur Verarbeitung großer Datenmengen (Terra- bis Petabyte)

Mehr

Hadoop & Spark. Carsten Herbe. 8. CC-Partner Fachtagung 2015

Hadoop & Spark. Carsten Herbe. 8. CC-Partner Fachtagung 2015 Hadoop & Spark Carsten Herbe 8. CC-Partner Fachtagung 2015 29.04.2015 Daten & Fakten 25 Jahre Erfahrung, Qualität & Serviceorientierung garantieren zufriedene Kunden & konstantes Wachstum 25 Jahre am Markt

Mehr

Hadoop. Simon Prewo. Simon Prewo

Hadoop. Simon Prewo. Simon Prewo Hadoop Simon Prewo Simon Prewo 1 Warum Hadoop? SQL: DB2, Oracle Hadoop? Innerhalb der letzten zwei Jahre hat sich die Datenmenge ca. verzehnfacht Die Klassiker wie DB2, Oracle usw. sind anders konzeptioniert

Mehr

Software Engineering Software Frameworks. am Beispiel Ruby on Rails Hendrik Volkmer WWI2010G

Software Engineering Software Frameworks. am Beispiel Ruby on Rails Hendrik Volkmer WWI2010G Software Engineering Software Frameworks am Beispiel Ruby on Rails Hendrik Volkmer WWI2010G Vorstellung Plan für heute Donnerstag Freitag Montag Softwareframeworks Wiederholung Wiederholung Webframeworks

Mehr

Datenanalyse im Web. Einführung in das Thema. Prof. Dr. Ingo Claÿen. Beispiele für Daten im Web. Extraktion und Aggregation von Informationen

Datenanalyse im Web. Einführung in das Thema. Prof. Dr. Ingo Claÿen. Beispiele für Daten im Web. Extraktion und Aggregation von Informationen Datenanalyse im Web Einführung in das Thema Prof. Dr. Ingo Claÿen Hochschule für Technik und Wirtschaft Berlin Beispiele für Daten im Web Extraktion und Aggregation von Informationen Datenanalyse im Web

Mehr

Universität Karlsruhe (TH)

Universität Karlsruhe (TH) Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Software Engineering für moderne, parallele Plattformen 10. MapReduce Dr. Victor Pankratius Agenda Motivation Der MapReduce-Ansatz Map- und

Mehr

Spark das neue MapReduce?

Spark das neue MapReduce? Spark das neue MapReduce? Oracle Data Warehouse Konferenz 2015 Carsten Herbe Business Intelligence Wir fokussieren mit unseren Services die Herausforderungen des Marktes und verbinden Mensch und IT Themenbereiche

Mehr

MapReduce mit Hadoop 08.11.12 1

MapReduce mit Hadoop 08.11.12 1 MapReduce mit Hadoop 08.11.12 1 Lernziele / Inhalt Wiederholung MapReduce Map in Hadoop Reduce in Hadoop Datenfluss Erste Schritte Alte vs. neue API Combiner Functions mehr als Java 08.11.12 2 Wiederholung

Mehr

APACHE PIG SEMINARARBEIT SSE - WS12/13 SEBASTIAN WALTHER

APACHE PIG SEMINARARBEIT SSE - WS12/13 SEBASTIAN WALTHER APACHE PIG SEMINARARBEIT SSE - WS12/13 SEBASTIAN WALTHER INHALT Das Hadoop Framework Hadoop s Distributed File System (HDFS) MapReduce Apache Pig Was ist Apache Pig & Pig Latin Anwendungsumgebungen Unterschied

Mehr

Spark das neue MapReduce?

Spark das neue MapReduce? Spark das neue MapReduce? Oracle Data Warehouse Konferenz 2015 Carsten Herbe Business Intelligence Wir fokussieren mit unseren Services die Herausforderungen des Marktes und verbinden Mensch und IT Themenbereiche

Mehr

Verteilte Systeme. Map Reduce. Secure Identity Research Group

Verteilte Systeme. Map Reduce. Secure Identity Research Group Verteilte Systeme Map Reduce Map Reduce Problem: Ein Rechen-Job (meist Datenanalyse/Data-Mining) soll auf einer riesigen Datenmenge ausgeführt werden. Teile der Aufgabe sind parallelisierbar, aber das

Mehr

Hadoop in a Nutshell Einführung HDFS und MapReduce. Oracle/metafinanz Roadshow Februar 2014

Hadoop in a Nutshell Einführung HDFS und MapReduce. Oracle/metafinanz Roadshow Februar 2014 Hadoop in a Nutshell Einführung HDFS und MapReduce Oracle/metafinanz Roadshow Februar 2014 Head of Data Warehousing DWH Principal Consultant DWH Senior Consultant Wir fokussieren mit unseren Services die

Mehr

Semantik und konzeptionelle Modellierung

Semantik und konzeptionelle Modellierung Semantik und konzeptionelle Modellierung Verteilte Datenbanken Christoph Walesch Fachbereich MNI der FH Gieÿen-Friedberg 18.1.2011 1 / 40 Inhaltsverzeichnis 1 Verteiltes Rechnen MapReduce MapReduce Beispiel

Mehr

Überblick. Einführung Graphentheorie

Überblick. Einführung Graphentheorie Überblick Einführung Graphentheorie Graph-Algorithmen mit Map Kurzeinführung Graphentheorie Algorithmus zum Finden von Cliquen Graphen bestehen aus Knoten (englisch: Node, Vertex, Mehrzahl Vertices) Kanten

Mehr

Einführung in Hadoop & MapReduce. Dr. Kathrin Spreyer Big Data Engineer

Einführung in Hadoop & MapReduce. Dr. Kathrin Spreyer Big Data Engineer Einführung in Hadoop & MapReduce Dr. Kathrin Spreyer Big Data Engineer München, 19.06.2013 Agenda Einleitung 1. HDFS 2. MapReduce 3. APIs 4. Hive & Pig 5. Mahout Tools aus Hadoop-Ökosystem 6. HBase 2 Worum

Mehr

Datenbanktechnologien für Big Data

Datenbanktechnologien für Big Data Datenbanktechnologien für Big Data Oktober 2013 Prof. Dr. Uta Störl Hochschule Darmstadt Big Data Technologien Motivation Big Data Technologien NoSQL-Datenbanksysteme Spaltenorientierte Datenbanksysteme

Mehr

Gebundene Typparameter

Gebundene Typparameter Gebundene Typparameter interface StringHashable { String hashcode(); class StringHashMap { public void put (Key k, Value v) { String hash = k.hashcode();...... Objektorientierte

Mehr

NoSQL-Datenbanksysteme: Revolution oder Evolution?

NoSQL-Datenbanksysteme: Revolution oder Evolution? NoSQL-Datenbanksysteme: Revolution oder Evolution? Kolloquium Institut für Informatik, Universität Rostock 24.01.2013 Prof. Dr. Uta Störl Hochschule Darmstadt uta.stoerl@h-da.de NoSQL: DAS aktuelle Datenbank-Buzzword

Mehr

Evaluation von Hadoop mit der Talend Big Data Sandbox. Michael Pretsch Pre-Sales Talend Germany GmbH

Evaluation von Hadoop mit der Talend Big Data Sandbox. Michael Pretsch Pre-Sales Talend Germany GmbH Evaluation von Hadoop mit der Talend Big Data Sandbox Michael Pretsch Pre-Sales Talend Germany GmbH 2015 Talend Inc. 1 Talend Überblick Die wichtigsten Fakten Gegründet im Jahr 2006 480+ Mitarbeiter in

Mehr

Neue Ansätze der Softwarequalitätssicherung

Neue Ansätze der Softwarequalitätssicherung Neue Ansätze der Softwarequalitätssicherung Googles MapReduce-Framework für verteilte Berechnungen am Beispiel von Apache Hadoop Universität Paderborn Fakultät für Elektrotechnik, Informatik und Mathematik

Mehr

Einführung in die Hadoop-Welt HDFS, MapReduce & Ökosystem. Big Data für Oracle Entwickler September 2014 Carsten Herbe

Einführung in die Hadoop-Welt HDFS, MapReduce & Ökosystem. Big Data für Oracle Entwickler September 2014 Carsten Herbe HDFS, MapReduce & Ökosystem Big Data für Oracle Entwickler September 2014 Carsten Herbe Wir fokussieren mit unseren Services die Herausforderungen des Marktes und verbinden Mensch und IT. Business Intelligence

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

Big Data - Chancen für die Energiewirtschaft

Big Data - Chancen für die Energiewirtschaft Big Data - Chancen für die Energiewirtschaft Dr. Roger Knorr - Leader Business Development Big Data (Email: Roger.Knorr@de.ibm.com, Mobil: 0160 885 1584) Agenda Big Data und die Energiewende Big Data -

Mehr

Verteilte Systeme CS5001

Verteilte Systeme CS5001 Verteilte Systeme CS5001 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Client-Server-Anwendungen: Vom passiven (shared state) Monitor zum aktiven Monitor Monitor (Hoare, Brinch-Hansen,

Mehr

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014)

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014) Anleitung Ein einfaches RMI-Beispiel (ab Java.0) c Y. Pfeifer (Juni 014) 1 Ein einfaches RMI-Beispiel Vorgehensweise: 1. Java Projekt anlegen. Zwei Packages server & client erstellen Auf der Server-Seite

Mehr

NoSQL-Datenbanksysteme

NoSQL-Datenbanksysteme NoSQL-Datenbanksysteme Hochschule Harz 14.06.2013 Prof. Dr. Uta Störl Hochschule Darmstadt uta.stoerl@h-da.de NoSQL: DAS aktuelle Datenbank Buzzword Quelle: http://geekandpoke.typepad.com/geekandpoke/2011/01/nosql.html

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2010/2011 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Java Remote Method Invocation (RMI) Realisierung

Mehr

Java-Programmierung. Remote Method Invocation - RMI

Java-Programmierung. Remote Method Invocation - RMI Java-Programmierung Remote Method Invocation - RMI Entwicklungsmethoden Sockets Entwurf verteilter Anwendungen ist relativ aufwändig, da zunächst ein Kommunikationsprotokoll entwickelt werden muss aufwändig

Mehr

Middleware - Cloud Computing Übung

Middleware - Cloud Computing Übung Middleware - Cloud Computing Übung Klaus Stengel, Johannes Behl, Tobias Distler, Tobias Klaus, Christopher Eibel Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme

Mehr

Themen. Web Service - Clients. Kommunikation zw. Web Services

Themen. Web Service - Clients. Kommunikation zw. Web Services Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur

Mehr

Datenanalyse mit Hadoop

Datenanalyse mit Hadoop Gideon Zenz Frankfurter Entwicklertag 2014 19.02.2014 Datenanalyse mit Hadoop Quelle: Apache Software Foundation Agenda Hadoop Intro Map/Reduce Parallelisierung des Datenflows Exkurs: M/R mit Java, Python,

Mehr

Überblick. MapReduce Einführung. Ablauf von MapReduce. MapReduce ist Modell zur Strukturierung von Programmen für parallele, verteilte Ausführung

Überblick. MapReduce Einführung. Ablauf von MapReduce. MapReduce ist Modell zur Strukturierung von Programmen für parallele, verteilte Ausführung Überblick MapReduce Einführung MapReduce Framework MapReduce Einführung und Grundlagen Ablauf eines MapReduce-Jobs Aufgaben des Frameworks Aufgabe 3 Abstract Factory Entwurfsmuster Vergleichen und Sortieren

Mehr

Java - Programmierung - Objektorientierte Programmierung 1

Java - Programmierung - Objektorientierte Programmierung 1 Java - Programmierung - Objektorientierte Programmierung 1 // Klassen und Objekte public class KlaObj public static void main(string args []) Klasse1 a; a = new Klasse1("heute", 47); Klasse1 b = new Klasse1

Mehr

Fachbereich Informatik. Ein MapReduce-basiertes Programmiermodell für selbstwartbare Aggregatsichten

Fachbereich Informatik. Ein MapReduce-basiertes Programmiermodell für selbstwartbare Aggregatsichten Fachbereich Informatik Technische Universität Kaiserslautern Masterarbeit Ein MapReduce-basiertes Programmiermodell für selbstwartbare Aggregatsichten Johannes Schildgen Fachbereich Informatik Technische

Mehr

Middleware - Cloud Computing Übung

Middleware - Cloud Computing Übung Middleware - Cloud Computing Übung Tobias Distler, Klaus Stengel, Timo Hönig, Christopher Eibel Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme)

Mehr

Teamprojekt & Projekt

Teamprojekt & Projekt 8. November 2010 Teamprojekt & Projekt Veranstalter: Betreuer: Prof. Dr. Georg Lausen Alexander Schätzle, Martin Przjyaciel-Zablocki, Thomas Hornung dbis Zeit und Ort: Montag 14-17 Uhr (c.t.) Raum: SR

Mehr

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer Applets Belebung von Webseiten Dipl.-Ing. Wolfgang Beer Was sind Applets? Java Klassen, die spezielle Richtlinien befolgen, um: "in Internet-Browsern lauffähig zu sein" Somit ist, komplexere Funktionalität,

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 14/15. Kapitel 11. Fehler und Ausnahmen 1

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 14/15. Kapitel 11. Fehler und Ausnahmen 1 Kapitel 11 Fehler und Ausnahmen Fehler und Ausnahmen 1 Ziele Fehlerquellen in Programmen und bei der Programmausführung verstehen Das Java-Konzept der Ausnahmen als Objekte kennenlernen Ausnahmen auslösen

Mehr

Pragmatik von Programmiersprachen

Pragmatik von Programmiersprachen Pragmatik von Programmiersprachen Im Kontext der Notation von Quelltexten Mike Becker, 11. Dezember 2014 Szenario: IT Dienstleister Unternehmen: Produkte: Kunden: IT Dienstleistung Beratung und Software

Mehr

Musterlösungen zur Klausur Informatik 3

Musterlösungen zur Klausur Informatik 3 Musterlösungen zur Klausur Informatik 3 Justus-Liebig-Universität Gießen Wintersemester 2003/2004 Aufgabe 1 (6 Punkte) Man kreuze bei den folgenden Deklarationen und Definitionen jeweils an, ob sie aus

Mehr

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. smichel@cs.uni-kl.de

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. smichel@cs.uni-kl.de Datenbankanwendung Wintersemester 2014/15 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de , NoSQL source:dilbert.com Inhalte der nächsten Vorlesungen ˆ Methoden große Datenmengen

Mehr

Höhere Programmierkonzepte Testklausur

Höhere Programmierkonzepte Testklausur Höhere Programmierkonzepte Testklausur Prof. Dr. Nikolaus Wulff Zum 15. Januar 2016 1 Ein Google-Map Algorithmus (5 Punkte) 1 2 typedef void X; 3 typedef void Y; 4 5 void map(unsigned int n / tuple length

Mehr

1 Polymorphie (Vielgestaltigkeit)

1 Polymorphie (Vielgestaltigkeit) 1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Dateien lesen und schreiben 2 Übersicht der heutigen Inhalte File Streams try-with-resources Properties csv-dateien 3 Klasse File Die Klasse java.io.file bietet Unterstützung im Umgang

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

Beispiel: DB-Mock (1/7)

Beispiel: DB-Mock (1/7) Beispiel: DB-Mock (1/7) Aufgabe: DB, auf die vereinfachend nur lesend zugeriffen wird mocken warum: benötigte keine DB-Lizenz, garantiert gleiche Werte ohne aufwändiges reset, kein Zeitverlust durch Verbindungsaufbau

Mehr

JUGS Java 8 Hands On Übungen

JUGS Java 8 Hands On Übungen JUGS Java 8 Hands On Übungen (C) Copyright by Michael Inden, 2015 michael.inden@zuehlke.com Lambdas Aufgabe 1a: Was sind gültige Lambdas? Schaue auf das folgende Interface LongBinaryOperator. public interface

Mehr

JUnit - Test Driven Development. Bernhard Frey, Thorsten Stratmann, Jackson Takam, Michel Müller 1

JUnit - Test Driven Development. Bernhard Frey, Thorsten Stratmann, Jackson Takam, Michel Müller 1 JUnit - Test Driven Development Bernhard Frey, Thorsten Stratmann, Jackson Takam, Michel Müller 1 Gliederung 1.Einleitung 1.1 Geschichte 1.2 Was sind Unit-Tests? 1.3 Failures/Errors 1.4 Ziele und Nutzen

Mehr

TCP/IP Programmierung. C# TimeServer Java6 TimeClient

TCP/IP Programmierung. C# TimeServer Java6 TimeClient TCP/IP Programmierung C# TimeServer Java6 TimeClient Stand 19.10.11 21:24:32 Seite 1 von 16 Inhaltsverzeichnis Erläuterung...3 Software...3 C#TimeServer...4 Klasse ServerThread...6 Starten und Beenden...7

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

Mehr

Distributed Computing Group

Distributed Computing Group JAVA TUTORIAL Distributed Computing Group Vernetzte Systeme - SS 06 Übersicht Warum Java? Interoperabilität grosse und gut dokumentierte Library weit verbreitet Syntax sehr nahe an C Erfahrung: Java wird

Mehr

Big Data. Prof. Robert Jäschke Forschungszentrum L3S Leibniz Universität Hannover

Big Data. Prof. Robert Jäschke Forschungszentrum L3S Leibniz Universität Hannover Big Data Prof. Robert Jäschke Forschungszentrum L3S Leibniz Universität Hannover Agenda Was ist Big Data? Parallele Programmierung Map/Reduce Der Big Data Zoo 2 3Vs oder: Was ist Big Data? Deutsche Telekom:

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2013/2014 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Kommunikations-Middleware Bietet höhere Kommunikations-Dienste

Mehr

Übungsaufgaben Java. Vorlesung Cloud Computing SoSe 2009. Cloud Computing SoSe 2009 Dr. M.Kunze 1

Übungsaufgaben Java. Vorlesung Cloud Computing SoSe 2009. Cloud Computing SoSe 2009 Dr. M.Kunze 1 Übungsaufgaben Java Vorlesung Cloud Computing SoSe 2009 Cloud Computing SoSe 2009 Dr. M.Kunze 1 Übung J1 Installieren Sie das Java Software-Entwicklungspaket JDK 6 Update 13 http://java.sun.com/javase/downloads/index.jsp

Mehr

public class SternchenRechteckGefuellt {

public class SternchenRechteckGefuellt { Java programmieren: Musterlösungen Konsolen-Aufgaben Aufgabe 1: Gefüllte Rechtecke zeichnen Schreiben Sie ein Programm, das ein durch Sternchen gefülltes Rechteck zeichnet. Der Benutzer soll Breite und

Mehr

JDBC. Allgemeines ODBC. java.sql. Beispiele

JDBC. Allgemeines ODBC. java.sql. Beispiele JDBC Java Data Base Connectivity Programmierschnittstelle für relationale Datenbanken Sammlung von Klassen, welche zum Aufbau einer Verbindung zwischen einem Java-Programm und einer Datenbank dienen Verwendet

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

MATERNA GmbH 2014 www.materna.de 1

MATERNA GmbH 2014 www.materna.de 1 MATERNA GmbH 2014 www.materna.de 1 Agenda Herausforderungen BigData Größeres Pferd oder Pferdegespann? Apache Hadoop Geschichte, Versionen, Ökosystem Produkte HDFS Daten speichern und verteilen Map/Reduce

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Verarbeitung großer Datenmengen in der Cloud

Verarbeitung großer Datenmengen in der Cloud Verarbeitung großer Datenmengen in der Cloud Andy Stumpp andystumpp@brilliantvision.de Abstract: Hohe Rechenkapazitäten sind oft erforderlich, aber an hohe Kosten gebunden. In der Praxis werden diese Kapazitäten

Mehr

Schritt 4: Hallo Enterprise Bean

Schritt 4: Hallo Enterprise Bean Prof. Dr. Th. Letschert FB MNI JEE Schritt 4: Hallo Enterprise Bean Einstieg: EJBs erzeugen und nutzen Meine erstes EJB Projekt Enterprise Beans sind eine Backend Technologie, die mit unterschiedlichen

Mehr

Web-Testen mit JUnit und HttpUnit. Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum

Web-Testen mit JUnit und HttpUnit. Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum 1 Web-Testen mit JUnit und HttpUnit Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum 2 Inhalt Entwicklertests in der Praxis Unit-Testing JUnit HttpUnit Praktisches Beispiel Bewertung

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

WebPoint. Ein Framework zur Erstellung von webbasierten Verkaufsanwendungen. Maria C. Raabe Daniel Woithe Vorlage: Torsten Walter. 16.

WebPoint. Ein Framework zur Erstellung von webbasierten Verkaufsanwendungen. Maria C. Raabe Daniel Woithe Vorlage: Torsten Walter. 16. Ein Framework zur Erstellung von webbasierten Verkaufsanwendungen Maria C. Raabe Daniel Woithe Vorlage: Torsten Walter 16. Oktober 2006 Gliederung Datenverwaltung 1 Datenverwaltung 2 Problemstellung Java

Mehr

Java Batch Der Standard für's Stapeln

Java Batch Der Standard für's Stapeln Java Batch Der Standard für's Stapeln Berlin Expert Days 18.09.2015 Dirk Weil, GEDOPLAN GmbH Dirk Weil GEDOPLAN GmbH, Bielefeld GEDOPLAN IT Consulting Konzeption und Realisierung von IT-Lösungen GEDOPLAN

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung

Grundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung Grundlagen der Programmierung Prof. H. Mössenböck 14. Schrittweise Verfeinerung Entwurfsmethode für Algorithmen Wie kommt man von der Aufgabenstellung zum Programm? Beispiel geg.: Text aus Wörtern ges.:

Mehr

MapReduce. www.kit.edu. Johann Volz. IPD Snelting, Lehrstuhl Programmierparadigmen

MapReduce. www.kit.edu. Johann Volz. IPD Snelting, Lehrstuhl Programmierparadigmen MapReduce Johann Volz IPD Snelting, Lehrstuhl Programmierparadigmen KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Wozu MapReduce?

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen

Mehr

Teilprüfung Software- und Internettechnologie Programmierkurs 1 Wintersemester 2005/2006

Teilprüfung Software- und Internettechnologie Programmierkurs 1 Wintersemester 2005/2006 Universität Mannheim Fakultät für Mathematik und Informatik Dr. Heinz Kredel Teilprüfung Software- und Internettechnologie Programmierkurs 1 Wintersemester 2005/2006 Name:.................................

Mehr

Synchronisation in Java. Invisible Web

Synchronisation in Java. Invisible Web Synchronisation in Java Studienprojekt Invisible Web Tang Zhihong Synchronisation in Java Synchronisationsproblem Monitore Wait und notify PipedInputStream und PipedOutputStream Synchronisation von Collections

Mehr

II.1.1. Erste Schritte - 1 -

II.1.1. Erste Schritte - 1 - ! 1. Grundelemente der Programmierung! 2. Objekte, Klassen und Methoden! 3. Rekursion und dynamische Datenstrukturen! 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1

Mehr

Javakurs zu Informatik I. Henning Heitkötter

Javakurs zu Informatik I. Henning Heitkötter Javakurs zu Informatik I Arrays vergleichen Implementieren Sie folgende Methode, die prüft, ob die Elemente der beiden Arrays an jeder Position übereinstimmen: public static boolean identisch(int[] a,

Mehr

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"

Mehr

Speicherung und Analyse von BigData am Beispiel der Daten des FACT-Teleskops

Speicherung und Analyse von BigData am Beispiel der Daten des FACT-Teleskops Bachelorarbeit Speicherung und Analyse von BigData am Beispiel der Daten des FACT-Teleskops Niklas Wulf Bachelorarbeit am Fachbereich Informatik der Technischen Universität Dortmund Dortmund, 16. Dezember

Mehr

Reflection. Arthur Zaczek. Nov 2014

Reflection. Arthur Zaczek. Nov 2014 Arthur Zaczek Nov 2014 1 Einleitung 1.1 Definition Reflection ist das Auslesen von Metainformationen über Klassen, deren Methoden & Eigenschaften zur Laufzeit. 1.2 Anwendungsfälle Analyse von Programmen

Mehr

Variablen manipulieren per JDI

Variablen manipulieren per JDI Variablen manipulieren per JDI Zusammenfassung Jede moderne Java IDE verfügt über eine mächtige und dennoch meist einfach zu bedienende Benutzeroberfläche die das finden von Fehlern in lokalen oder entfernt

Mehr

Einführung in das parallele Programmieren mit MPI und Java

Einführung in das parallele Programmieren mit MPI und Java Einführung in das parallele Programmieren mit und Java Seite 1 Übersicht Parallele Prozesse und Erste Schritte mit Kollektive Kommunikation Weitere Möglichkeiten Seite 2 Literatur (1) Homepage des 2-Forums

Mehr

MapReduce in der Praxis

MapReduce in der Praxis MapReduce in der Praxis Rolf Daniel Seminar Multicore Programmierung 09.12.2010 1 / 53 Agenda Einleitung 1 Einleitung 2 3 Disco Hadoop BOOM 4 2 / 53 1 Einleitung 2 3 Disco Hadoop BOOM 4 3 / 53 Motivation

Mehr

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests.

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests. Universität Osnabrück 1 Problemstellung 3 - Objektorientierte Programmierung in Java Vorlesung 24: Reflection 1 SS 2006 Prof. Dr. Frank M. Thiesing, FH Osnabrück Um ein Objekt anzulegen, eine seiner Methoden

Mehr

Praktikum Informatik II Prof. Dr. Martin Trauth, Dr. Michael Männel

Praktikum Informatik II Prof. Dr. Martin Trauth, Dr. Michael Männel Praktikum Informatik II Prof. Dr. Martin Trauth, Dr. Michael Männel FB Physikalische Technik Musterlösungen Teil 4 Aufgabe 1 package teil4; import javax.swing.*; public class Ei { int haltung, ident; String

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Exceptions: Parameterprüfung import java.io.ioexception;

Exceptions: Parameterprüfung import java.io.ioexception; PPK2 Java Exceptions, Dateien Seite 1 von 31 Exceptions: Parameterprüfung import java.io.ioexception; public class Parameters public static String Methode(String str,exception obj,int index, String[] array)

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

Gliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions

Gliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions try-catch Schlüsselworte try-catch e Schlüsselwort Schlüsselwort selbst erstellte ermöglichen die Behandlung von Fehlern, die zur Laufzeit entstehen. try-catch in C: Fehler führt immer zum Abbruch des

Mehr

Ein Jahr mit dem. Play! Framework FLAVIA IT. Dmitrij Funkner & Jonas Kilian. Quelle: http://www.flickr.com/photos/sdasmarchives/6996901834

Ein Jahr mit dem. Play! Framework FLAVIA IT. Dmitrij Funkner & Jonas Kilian. Quelle: http://www.flickr.com/photos/sdasmarchives/6996901834 Ein Jahr mit dem Play! Framework FLAVIA IT Dmitrij Funkner & Jonas Kilian Quelle: http://www.flickr.com/photos/sdasmarchives/6996901834 Über uns dmitrij funkner jonas kilian Konzentration auf das Wesentliche

Mehr

5. Übung zu Software Engineering

5. Übung zu Software Engineering 5. Übung zu Software Engineering WS 2009/2010 Henning Heitkötter Desktop-Anwendung AUFGABE 13 1 Schichtenarchitektur Strukturierung komplexer Anwendungen Anforderungen: Flexibilität, Robustheit, Wartbarkeit,

Mehr

Software Engineering I

Software Engineering I Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse

Mehr

JUnit. Unit testing unter Java

JUnit. Unit testing unter Java JUnit Unit testing unter Java Was ist Junit? einfaches Framework zum Schreiben von wiederholbaren Tests Besonders geeignet für unit testing Erlaubt Hierarchie von Testsuites Schreiben eines Test Case 1.

Mehr

Hadoop. High Performance Batches in der Cloud. Hadoop. Folie 1 25. Januar 2011

Hadoop. High Performance Batches in der Cloud. Hadoop. Folie 1 25. Januar 2011 High Performance Batches in der Cloud Folie 1 Alles geht in die Cloud Image: Chris Sharp / FreeDigitalPhotos.net Cloud und Batches passen zusammen Batches Cloud Pay-per-Use Nur zeitweise genutzt Hohe Rechenkapazitäten

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

Sortieralgorithmen. Inhalt: InsertionSort BubbleSort QuickSort. Marco Block

Sortieralgorithmen. Inhalt: InsertionSort BubbleSort QuickSort. Marco Block Inhalt: InsertionSort BubbleSort QuickSort Block M.: "Java-Intensivkurs - In 14 Tagen lernen Projekte erfolgreich zu realisieren", Springer-Verlag 2007 InsertionSort I Das Problem unsortierte Daten in

Mehr

Benutzerauthentifizierung und Zugriffsschutz mit JAAS

Benutzerauthentifizierung und Zugriffsschutz mit JAAS Benutzerauthentifizierung und Zugriffsschutz mit JAAS Werner Eberling werner.eberling@mathema.de www.mathema.de Übersicht Altbekanntes kurz erwähnt Java Security Des Kaisers neue Kleider JAAS Zu Ihren

Mehr

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7 Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck

Mehr

Hadoop I/O. Datenintegrität Kompression Serialisierung Datei-basierte Datenstrukturen. 14.02.2012 Prof. Dr. Christian Herta 1/29

Hadoop I/O. Datenintegrität Kompression Serialisierung Datei-basierte Datenstrukturen. 14.02.2012 Prof. Dr. Christian Herta 1/29 Hadoop I/O Datenintegrität Kompression Serialisierung Datei-basierte Datenstrukturen 14.02.2012 Prof. Dr. Christian Herta 1/29 Data I/O und Hadoop Allgemeine Techniken Data I/O Datenintegrität Kompression

Mehr

Besonderheiten von C#

Besonderheiten von C# Besonderheiten von C# Wert- und Referenztypen int a, b; a = 3; b = a; a++; Debug.Assert( a==4 && b==3 &&!a.equals(b), "int ist doch kein Werttyp" ); RTyp ra, rb; ra = new RTyp(3); rb = ra; ra.inc(); Debug.Assert(

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Generische Typen in Java 1.5. Die Erweiterung der Java Language Specification

Generische Typen in Java 1.5. Die Erweiterung der Java Language Specification Generische Typen in Java 1.5 - Seminarvortrag 1/26 Generische Typen in Java 1.5 Die Erweiterung der Java Language Specification Seminarvortrag von Heiko Minning, mi3795 bei Prof. Dr. Uwe Schmidt, FH-Wedel

Mehr

Service Engineering. Einbindung von Web Services in eine Java-Anwendung. Prof. Dr. Andreas Schmietendorf 1. SoSe 2010. Service Engineering

Service Engineering. Einbindung von Web Services in eine Java-Anwendung. Prof. Dr. Andreas Schmietendorf 1. SoSe 2010. Service Engineering Einbindung von Web Services in eine Java-Anwendung Prof. Dr. Andreas Schmietendorf 1 Ziele der Übung Vertiefung der Kenntnisse im Umgang mit SOAP Test eines Web Service mit Hilfe eines verfügbaren SOAP-Clients

Mehr