FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen. Sommersemester Michael Theis, Lehrbeauftragter 1

Größe: px
Ab Seite anzeigen:

Download "FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen. Sommersemester Michael Theis, Lehrbeauftragter 1"

Transkript

1 FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Sommersemester Michael Theis, Lehrbeauftragter 1

2 Wer braucht schon einen Architekten? 2

3 Applikationen benötigen andere Systeme (Consumer) Applikationen unterstützen andere Systeme (Provider) Web UI (HTTP/HTML) Remote Service Interfaces (RMI) Enterprise Application Mainframe based Applications (JCA) Relational Databases (JDBC/JPA) Remote Service Interfaces (RMI) Message-based Interfaces (JMS) Web Service Interfaces (HTTP/SOAP) Message-based Interfaces (JMS) Wie wollen Sie diese Komplexität ohne Architektur bewältigen? 3

4 4

5 Horizontale technische Schichten Vertikale fachliche Schichten Fachmodul A Fachmodul B Fachmodul C Fachmodul D Präsentation Geschäftslogik Enterprise Application Integration 5

6 Wohldefinierte Schnittstellen zwischen den Schichten Zyklenfreie, gerichtete Abhängigkeiten zwischen den Schichten Getrennte Verantwortlichkeiten Lose Kopplung / Hohe Kohäsion Verteilung der Schichten auf verschiedene Lokationen möglich Jede Schicht hat eigenen Namensraum (in Java: Packages) 6

7 Präsentation (Presentation*) Interaktion zwischen Anwendung und Benutzer Anzeige und Bearbeitung von Informationen Geschäftslogik (Business, Domain*) Kern der Anwendungen bestehend aus Diensten in einer Serviceschicht (Service Layer) und Domänenmodell (Domain Model) Integration (Integration, Data Source*) Integration externer Ressourcen Transformation externes Domänenmodell / internes Domänenmodell 7

8 HTTP / HTML Benutzer Benutzeroberfläche für menschliche Benutzer Beinhaltet nur Präsentationslogik Höchste Änderungshäufigkeit innerhalb der Anwendung Rich Client oder Thin Client Präsentation (Presentation) 8

9 Lokal RMI/IIOP HTTP/SOAP HTTP/REST Geschäftslogik (Business) Service Layer Service Domain Model Service Kern der Anwendung Services kapseln Geschäftslogik Lokal: Präsentationsschicht der eigenen Anwendung Entfernt: Andere Anwendungen Services operieren auf einheitlichem Domänenmodell Nutzt Integrationsschicht für Integration von externen Ressourcen Domain Object Domain Object Domain Object 9

10 JPA JCA Lokal Integration (Integration, Data Source) Resource Access Components Repository Adapter Integriert externe Ressourcen Bildet externes Domänenmodell auf internes Domänenmodell ab Kapselt Information über konkrete Integration Welche Datenbank? Welches Kommunikationsprotokoll? Welches externe System? Datenbank HOST 10

11 Domänenmodell Schichtenmodell mit 3 Schichten Bereinigtes Schichtenmodell Präsentation UI- Component Präsentation UI- Component Geschäftslogik Business Service Domain Object Geschäftslogik Business Service Domain Object Integration Integration Component Zyklische Abhängigkeit!!! Integration Integration Component 11

12 User Data base Application Core Business Service Domain Object Main frame System Adapter Port Auch: Ports & Adapter Außenwelt kommuniziert mit Applikation über Ports Applikation kommuniziert mit Außenwelt über Ports Technologiespezifische Adapter hinter Ports übersetzen Kommunikation Applikation kennt keine Details der Außenwelt Außenwelt ist simulierbar 12

13 Aufgebaut aus Komponenten 13

14 Präsentation Faces Servlet View Managed Bean FacesContext Komponenten füllen Geschäftslogik Schichten mit Leben Enterprise Entity Boundary Application Control Integration Schicht bestimmt Komponententyp Repository Adapter 14

15 Präsentation Faces Servlet View Managed Bean FacesContext Klar definierte Abhängigkeiten Geschäftslogik zwischen den Komponenten ohne Zyklen Enterprise Entity Boundary Application Control Integration Repository Adapter 15

16 Präsentation Faces Servlet View Managed Bean FacesContext Geschäftslogik Kommunikation zwischen Schichten nur über Interfaces Enterprise Entity Boundary Application Control Integration Repository Adapter 16

17 Klare Endpunkte für Kommunikation mit der Außenwelt Präsentation Geschäftslogik Faces Servlet View Managed Bean Enterprise Entity Boundary Application FacesContext Control Klare Kommunikationspfade innerhalb der Anwendung Integration Repository Adapter 17

18 Ermöglicht Entkopplung, Kapselung und klare Trennung der Verantwortlichkeiten Erleichtert die Erstellung service-orientierter Applikationen Schafft gemeinsame Sprache zur Kommunikation des Designs Leicht umzusetzen 1 Implementierungsklasse pro Komponente 1 Interface pro Komponente (optional, aber empfehlenswert) Gruppierung in Module/Packages gemäß Konvention 18

19 Entscheidung für Designmodell zu Projektbeginn Wesentliche Modelle: Serviceorientiert (Service Oriented Architecture SOA) Domänengetrieben (Domain Driven Design DDD) Modelle können kombiniert werden, aber ein Modell sollte Hauptmodell sein 19

20 Service Oriented Architecture Services enthalten alle Logik Domänenobjekte sind dumme Datenträger Optimierung für Verteilung bestimmt internes Design Fördert Anti-Pattern Anemic Domain Model * Widerspricht objekt-orientiertem Design Domain Driven Design Domänenobjekte enthalten Daten und Logik Services enthalten nur Logik zur Orchestrierung von Domänenobjekten Fachlichkeit einziger Treiber für internes Design Verteilter Zugriff über Adapter Entspricht objekt-orientiertem Design * Martin Fowler AnemicDomainModel 20

21 21

22 Gemeinsame Patterns und Prinzipien 22

23 Don t call us, we call you! Kontrolle wandert in das verwendete Framework One important characteristic of a framework is that the methods defined by the user to tailor the framework will often be called from within the framework itself, rather than from the user's application code. The framework often plays the role of the main program in coordinating and sequencing application activity. This inversion of control gives frameworks the power to serve as extensible skeletons. The methods supplied by the user tailor the generic algorithms defined in the framework for a particular application. Designing Reusable Classes von Ralph E. Johnson und Brian Foote Journal of Object-Oriented Programming Juni/Juli 1988, S ff 23

24 Präzisierung des Inversion of Control-Patterns u.a. von Martin Fowler Ein sog. Assemblierer löst die Abhängigkeiten zwischen Objekten auf Lose gekoppelte POJOs leben in einem Inversion of Control- Container Container bestimmt Lebenszyklus der Objekte Container löst als Assemblierer die Abhängigkeiten auf 24

25 Implementierungsklasse des Service public class ServiceImpl implements Service public void dosomething() { // Hier wird etwas gemacht } } Interface des Service public interface Service { public void dosomething(); } Consumer ist abhängig vom Service-Interface public class Consumer { private Service service;... public void useservice() { this.service.dosomething(); } 25

26 Traditionell Consumer erzeugt Objekt von ServiceImpl und initialisiert damit Feld service: public class Consumer { private Service service = new ServiceImpl(); Consumer wird abhängig von konkreter Implementierung Mit Dependency Injection Consumer markiert Feld service als Ziel für Dependency Injection: public class Consumer private Service service; Container erkennt annotiertes Feld, erzeugt ein Objekt von ServiceImpl und injiziert Referenz in Feld service Consumer kennt nicht die konkrete Implementierung 26

27 Gemeinsame Patterns und Prinzipien 27

28 Aspekt AOP Proxy Advice Pointcut quellmethode() zielmethode() Methodenaufruf (= Joinpoint) Target Object 28

29 EJB-Container verwendet AOP für Transaktionsmanagement, Zugriffskontrolle und Remoting JAX-WS verwendet AOP für das Mapping von Methodenaufrufen mit Parametern auf SOAP-Nachrichten und umgekehrt JPA verwendet AOP für die Zustandsüberwachung von Entities 29

30 Gemeinsame Patterns und Prinzipien 30

31 Einfaches Prinzip zur Erleichterung der Programmierung übernommen aus RUBY Standardmäßig verwendet die Laufzeitumgebung sinnvolle Voreinstellungen Nur im davon abweichenden Fall muss eine Konfiguration vorgenommen werden 31

32 Stateless Session Beans oder Managed Beans werden unter dem einfachen Klassennamen registriert, falls nichts anderes angegeben Methodenaufrufe eines Enterprise Java Beans laufen immer in einem transaktionalen Kontext (TRANSACTION_REQUIRED) Die Java Persistence Architecture (JPA) mappt automatisch Klassennamen von Entitäten auf Tabellennamen und Feldnamen auf Spaltennamen 32

33 33

34 Verteilung Transaktionen Persistenz Sicherheit Regelt Kommunikation verteilter Anwendung Steuern Zugriff auf transaktionale Ressourcen Stellen Datenkonsistenz sicher Bietet die dauerhafte Speicherung von Daten Bildet Domänenmodell auf relationales Datenmodell ab Schützt die Anwendung vor unberechtigten Zugriffen 34

35 Verteilung 35

36 Don t distribute your objects! Quelle: Martin Fowler Patterns of EAA 36

37 Das Netzwerk ist zuverlässig Latenz[zeit] ist 0 Bandbreite ist unendlich Das Netzwerk ist sicher [Netzwerk-]Topologie ändert sich nicht Es gibt nur einen Administrator Transportkosten sind 0 Das Netzwerk ist homogen Quelle: Peter Deutsch, James Gosling Fallacies of Distributed Computing 37

38 Komplexität Rechner Prozess Rechner Prozess App Rechner Prozess App Prozess Rechner Prozess App Rechner Prozess App App App App Grad der Verteilung 38

39 Skalierbarkeit Ausfallsicherheit Technologiegrenzen Unterschiedliche Standorte Bereitstellung von Diensten für externe Consumer Komposition eigener Dienste aus Diensten externer Provider 39

40 File Transfer Gemeinsame Datenbank Remote Procedure Call Messaging 40

41 Import Anwendungen tauschen Informationen über Dateien aus Anforderungen bestimmen Häufigkeit des Austausches Export App 1 App 2 Gemeinsame Daten 41

42 Anwendungen tauschen Informationen über gemeinsame Tabellen aus Datenbank-Schema bestimmt Datenformat Anwendung 1 Anwendung 2 Anwendung 3 Gemeinsame Daten 42

43 Skeleton Anwendungen kapseln ihre Daten und stellen Interfaces für den Zugriff zur Verfügung Austausch der Informationen erfolgt über synchronen entfernten Methodenaufruf Anforderung mit Eingabeparametern Stub App 1 App 2 Antwort mit Rückgabewert 43

44 Häufiger, unmittelbarer, zuverlässiger und asynchroner Austausch von Nachrichten Flexibelste Integration, erfordert aber Umdenken Messaging System Anforderung Anforderungskanal Anforderung Sender Endpunkt Endpunkt Empfänger Antwort Antwortkanal Antwort 44

45 Transaktionen 45

46 Atomicity Eine Transaktion wird entweder ganz oder gar nicht ausgeführt Consistency Eine Transaktion überführt eine transaktionale Ressource von einem bestehenden konsistenten Zustand in einen neuen konsistenten Zustand Isolation Das Ergebnis einer Transaktion darf für andere Transaktionen solange nicht sichtbar sein, bis diese Transaktion erfolgreich abgeschlossen worden ist. Durability Das Ergebnis einer erfolgreich abgeschlossenen Transaktion muss dauerhaft erhalten bleiben und Abstürze jeder Art überstehen. 46

47 Isolationsgrad Durchsatz Serializable Wiederholte Lesezugriffe liefern gleiche Sätze und gleiche Ergebnismengen Schreib-, Lese- und Bereichsoperationen verursachen Sperren Repeatable reads Wiederholte Lesezugriffe liefern gleiche Sätze aber unterschiedliche Ergebnismengen möglich (Phantom Read) Schreib- und Leseoperationen verursachen Sperren Read committed Lesezugriffe liefern nur committete Sätze Schreiboperationen verursachen Sperren Read uncommitted Lesezugriffe liefern nicht committete Sätze Keine Sperren 47

48 Begin Transaktion beginnt Commit Transaktion endet erfolgreich Beteiligte transaktionale Ressourcen werden verändert Rollback Transaktion bricht nach Fehler ab Beteiligte transaktionale Ressourcen bleiben unverändert 48

49 Bei Aufrufen entfernter Anwendungen wird der Transaktionskontext mit übertragen Aufgerufene Methode kann die die Transaktion des Aufrufers teilen (muss aber nicht) Koordination der Transaktionen übernimmt der aufrufende Container (Applikationsserver) Umsetzung teilweise aufwändig bzw. unmöglich 49

50 ACID skaliert nur bis zu einem gewissen Grad ACID bei verteilten Datenspeichern nur schwierig umzusetzen Verfügbarkeit, Fehlertoleranz und Performance wichtiger als Konsistenz und Isolation BASE ersetzt ACID bei hochskalierenden Datenspeichern Basically Available Soft State Eventual Consistency 50

51 Starke Konsistenz Isolation Fokus auf Commit ACID Konservativ (pessimistisch) Harte Strukturen, lassen sich nur schwer weiterentwickeln BASE Schwache Konsistenz Hohe Verfügbarkeit Best Effort Aggressiv (optimistisch) Weiche Strukturen, lassen sich leicht weiterentwickeln Quelle: Dr. Eric A. Brewer, Towards Robust Distributed Systems PODC Keynote

52 Availability Jeder Client kann immer Lesen und Schreiben CA Relationale Datenbanken Nur 2 Ziele sind erreichbar! AP Cassandra CouchDB Riak Alle Clients sehen die gleichen Daten Consistency CP BigTable, MongoDB Memcache, Redis Partition Tolerance Das System arbeitet erwartungsgemäß trotz Verteilung über mehrere Netzwerk-Partitionen 52

53 Security 53

54 Authentisierung (Wer bin ich?) Identifizierung eines Objekts und die Überprüfung der Identität Identität entspricht Benutzername Identifizierung erfolgt über Credentials Passwort Zertifikat Biometrische Eigenschaften Autorisierung (Was darf ich?) Überprüfung von Berechtigungen eines angemeldeten Benutzers bezogen auf geschützte Ressourcen Berechtigungen entsprechen Rollen oder Gruppen 54

55 Bei Aufrufen entfernter Anwendungen wird der Securitykontext mit übertragen Aufgerufene Methode läuft im gleichen Securitykontext wie der Aufrufer Benutzer muss sich nicht erneut anmelden (Single Sign-On/SSO) Beteiligte Container (Application Server) müssen einander trauen Umsetzung teilweise aufwändig 55

56 Persistenz 56

57 Spalte Klasse feld 1 feld 2 Vererbung Primärschlüssel Tabelle PK PK Zeile Klasse feld 1 feld 2 Komposition 1 Klasse feld 1 feld 2 1..* ORM Beziehungen Indizes Constraints Tabelle PK PK FK FK 57

58 Mapping muss programmiert werden Zugriff auf die Datenbank mit SQL muss programmiert werden Klasse Klasse DAO ORM JDBC DataSource SQL Tabelle Tabelle Tabelle Klasse 58

59 Persistente Klassen werden mit Mapping-Annotationen versehen und mit Datasource verknüpft Persistenzframework führt Mapping durch und generiert SQL zur Laufzeit Klasse Klasse JPA ORM JDBC DataSource SQL Tabelle Tabelle Tabelle Klasse Annotationen Persistence.xml 59

60 Enterprise Application Enterprise Application RDBMS RDBMS NoSQL Relationale Datenbanken stoßen zunehmen an ihre Grenzen Ablage der Daten in einem Datenspeicher nicht mehr zeitgemäß / sinnvoll Moderne Applikationen stützen sich je nach Anforderungen auf unterschiedliche Datenbanken Kenntnisse über alternative Datenspeicher erforderlich NoSQL 60

61 61

62 62

63 Martin Fowler: Patterns of Enterprise Application Architecture Addison Wesley 2003; ISBN Adam Bien: Real World Java EE Patterns: Rethinking Best Practices press.adam-bien.com September 2012; ISBN Gregor Hohpe, Bobby Wolfe Enterprise Integration Patterns Addison Wesley, 2004, ISBN: Eric Evans: Domain Driven Design: Tackling Complexity in the Heart of Software Addison Wesley 2004; ISBN

64 Michael Theis Lehrbeauftragter Hochschule München mobile web 64

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen Sommersemester 2013 Michael Theis, Lehrbeauftragter Java EE Spezifikation definiert ein Programmiermodell für Applikationen die Eigenschaften

Mehr

JavaEE Grundlagen. Theis Michael - Senior Developer UniCredit Global Information Services S.C.p.A

JavaEE Grundlagen. Theis Michael - Senior Developer UniCredit Global Information Services S.C.p.A JavaEE Grundlagen FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Theis Michael - Senior Developer UniCredit Global Information Services S.C.p.A Sommersemester 2012 2 Die Java EE

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Geschäftskomponenten mit EJBs

Geschäftskomponenten mit EJBs Geschäftskomponenten mit EJBs FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Theis Michael - Senior Developer UniCredit Global Information Services S.C.p.A Sommersemester 2012 2

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Application Frameworks

Application Frameworks Seminar Software Engineering 1 Grundlagen Agenda Spring Framework Dependency Injection Aspektorientierte Programmierung Datenbankanbindung Modell View Controller Sicherheit Spring vs. Java EE Zusammenfassung

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013 GTUG Java Arbeitskreis Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung September 2013 Jürgen Depping CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Agenda Was ist OmnivoBase?

Mehr

Lehrplan: Architektur und Design. paluno

Lehrplan: Architektur und Design. paluno Lehrplan: Architektur und Design Gliederung 1 Grundlagen der industriellen So9ware Entwicklung 2 Ebenen von Architektur und Design 3 KernakAvitäten von So9ware- Architekten 4 Architekturtypologien von

Mehr

JBoss Seam. Ein JEE 5 Webframework. Jörg Wüthrich Infopoint, 4. Februar 2009

JBoss Seam. Ein JEE 5 Webframework. Jörg Wüthrich Infopoint, 4. Februar 2009 JBoss Seam Ein JEE 5 Webframework Jörg Wüthrich Infopoint, 4. Februar 2009 Inhalt Einführung Warum Seam? Zentrale Konzepte Demo Validierung Abschliessende Gedanken 04.02.2009 Infopoint - JBoss Seam - Jörg

Mehr

Enterprise JavaBeans

Enterprise JavaBeans Enterprise JavaBeans Sebastian Pipping 18. Dezember 2006 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. Teil I J2EE J2EE Was ist J2EE? Was ist J2EE?

Mehr

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Die Herausforderung: Hostanbindung Viele Unternehmen besitzen Mainframe- und Legacy-Anwendungen, so genannte Enterprise Information Systems (EIS),

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

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java Oliver Kalz Agenda Grundlagen Objektpersistenz Objektrelationales Mapping Performance Fazit

Mehr

Aspektorientierte Middleware Florian Wagner

Aspektorientierte Middleware Florian Wagner Anwendungen der Aspektorientierung (5) Übersicht Middleware? Middleware-Concerns Java 2 Enterprise Edition AO Implementierung AOP & JBoss 2 mid dle ware (mĭd'l-wâr') n. Software that serves as an intermediary

Mehr

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

Mehr

Architecture Blueprints

Architecture Blueprints Architecture Blueprints Daniel Liebhart, Peter Welkenbach, Perry Pakull, Mischa Kölliker, Michael Könings, Markus Heinisch, Guido Schmutz Ein Leitfaden zur Konstruktion von Softwaresystemen mit Java Spring,.NET,

Mehr

Masterkurs Verteilte betriebliche Informationssysteme

Masterkurs Verteilte betriebliche Informationssysteme Peter Man dl Masterkurs Verteilte betriebliche Informationssysteme Prinzipien, Architekturen und Technologien Mit 196 Abbildungen STUDIUM VIEWEG+ TEUBNER 1 Einführung in verteilte Systeme 1 1.1 Definitionen

Mehr

Enterprise Application Integration Erfahrungen aus der Praxis

Enterprise Application Integration Erfahrungen aus der Praxis Enterprise Application Integration Erfahrungen aus der Praxis Teil 4: EAI und.net, EAI und J2EE Tutorial NODs 2002, Wolfgang Keller and Generali 2001, 2002, all rights reserved 1 Überblick EAI und....net

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Übungsaufgabe Transaktion als Middleware

Übungsaufgabe Transaktion als Middleware Übungsaufgabe Transaktion als Middleware und Java Persistence API Client/Server Abstraktes Komponentenmodell Entscheidende Punkte Erweiterung der Invoke-Methode Context-Verwaltung Transaktionsbehandlung

Mehr

Komponentenorientierte Software-Entwicklung. Seite 1 / 42

Komponentenorientierte Software-Entwicklung. Seite 1 / 42 Seite 1 / 42 Wiederholung Messaging Java Messaging Service (JMS) Pub/Sub P2P Messaging Middleware XMPP-Protokoll Java API for XML-Processing (JAXP) Java API for XML-Binding Webservices / SOA Simple Object

Mehr

Anwendung eines Enterprise Java Beans

Anwendung eines Enterprise Java Beans Anwendung eines Enterprise Java Beans EJB Server EJB Container Remote Interface Home Interface EJB Object Der EJB Container kümmert sich um die Kommunikation des Beans mit anderen Komponenten, wobei er

Mehr

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH Erfahrungen und Erkenntnisse Klaus Richarz, HBT GmbH Java Enterprise Edition 5.0 JBoss Seam Konsequenzen für Realisierung Qualitätssicherung Build & Deployment Fazit & Empfehlungen JBoss Seam in Projekten,

Mehr

business.people.technology.

business.people.technology. business.people.technology. Portalserver meets SOA: State of the Portal Art Andreas Hartmann 18.06.2010 2 Portalserver meets SOA: State of the Portal Art 18.06.2010 Agenda Baukastensystem zur Integration

Mehr

Oliver Paulus, oliver@code-project.org. 7. Februar 2006. Spring Framework Einführung. Oliver Paulus, oliver@codeproject.org. Was ist Spring?

Oliver Paulus, oliver@code-project.org. 7. Februar 2006. Spring Framework Einführung. Oliver Paulus, oliver@codeproject.org. Was ist Spring? oliver@code-project.org 7. Februar 2006 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2

Mehr

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition Inhaltsverzeichnis Vorwort 13 I Enterprise Java im Überblick 1 Bedeutung von Enterprise Java und IBM WebSphere 21 1.1 Enterprise Java 23 1.1.1 Anforderungen 23 1.1.2 E-Business 30 1.1.3 Java 36 1.2 IBM

Mehr

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

Softwareentwicklung in verteilten Umgebungen, Teil 12 Enterprise Middleware. Dieter Schmalstieg. Dieter Schmalstieg SVU Enterprise Middleware

Softwareentwicklung in verteilten Umgebungen, Teil 12 Enterprise Middleware. Dieter Schmalstieg. Dieter Schmalstieg SVU Enterprise Middleware Softwareentwicklung in verteilten Umgebungen, Teil 12 Enterprise Middleware Dieter Schmalstieg Middleware für Enterprise Information Systems Enterprise Information Systems Grosse Unternehmen Viele existierende

Mehr

JDO Java Data Objects

JDO Java Data Objects JDO Java Data Objects Ralf Degner, Chief Consultant Ralf.Degner@poet.de Agenda POET Motivation Geschichte Einführung Architekturen FastObjects POET Gegründet 1993 Zwei Produktlinien esupplier Solutions:

Mehr

Windows Azure für Java Architekten. Holger Sirtl Microsoft Deutschland GmbH

Windows Azure für Java Architekten. Holger Sirtl Microsoft Deutschland GmbH Windows Azure für Java Architekten Holger Sirtl Microsoft Deutschland GmbH Agenda Schichten des Cloud Computings Überblick über die Windows Azure Platform Einsatzmöglichkeiten für Java-Architekten Ausführung

Mehr

Geschäftskomponenten mit EJB 3.1

Geschäftskomponenten mit EJB 3.1 Geschäftskomponenten mit EJB 3.1 Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Kurt Fastner Sommersemester 2012 Inhalt Was ist EJB Die verschiedenen EJB-Typen/Komponenten Applikationsserver,

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert

Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert Partly based on material by Victor García Barrios and Paul Krzyzanowski

Mehr

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation spezielle Technik aus dem Java-Umfeld Ausführung der Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VM s Aufruf

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

Java 2, Enterprise Edition Einführung und Überblick

Java 2, Enterprise Edition Einführung und Überblick Universität aiserslautern AG Datenbanken und Informationssysteme Seminar Datenbank-Aspekte des E-Commerce Java 2, Enterprise Edition Einführung und Überblick m_husema@informatik.uni-kl.de Vortragsinhalte

Mehr

Mit Java von der Datenbank in den Browser Thomas Bröll Principal Consultant Trivadis GmbH, Stuttgart

Mit Java von der Datenbank in den Browser Thomas Bröll Principal Consultant Trivadis GmbH, Stuttgart Mit Java von der Datenbank in den Browser Thomas Bröll Principal Consultant Trivadis GmbH, Stuttgart BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA HAMBURG COPENHAGEN LAUSANNE MUNICH

Mehr

Contexts and Dependency Injection. W3L AG info@w3l.de

Contexts and Dependency Injection. W3L AG info@w3l.de 1 Contexts and Dependency Injection W3L AG info@w3l.de 2015 2 Inhaltsverzeichnis Teil 1: Motivation Teil 2: Inversion of Control Teil 3: Contexts and Dependency Injection Teil 4: Beispiel zurück 3 Motivation

Mehr

Rechnernetze Projekt SS 2015

Rechnernetze Projekt SS 2015 30/03/15 Seite 1 Aspektorientierte Programmierung logische Aspekte (Concerns) im Programm separieren Crosscutting Concerns (Ziel: generische Funktionalitäten über mehrere Klassen hinweg zu verwenden -

Mehr

Eclipse und EclipseLink

Eclipse und EclipseLink Eclipse und EclipseLink Johannes Michler Johannes.Michler@promatis.de PROMATIS, Ettlingen Zugriff auf Oracle Datenbanken aus Eclipse RCP Anwendungen via EclipseLink 18.09.2009 1 Gliederung Eclipse als

Mehr

G s e a s m a t m ar a ch c i h tek e tur u I und IoC

G s e a s m a t m ar a ch c i h tek e tur u I und IoC Gesamtarchitektur I und IoC Schichten einer Web-Anwendung Initiiert durch J2EE und Spring: Strukturierte Sicht auf UI und Fachlogik (Domäne) Ergibt 5 Schichten: Man unterscheidet Präsentations- und Domänenmodell!

Mehr

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste Hauptseminar Internet Dienste Sommersemester 2004 Boto Bako Webservices 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung Was sind Web Services? Web Services sind angebotene

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,

Mehr

Warum EJB Technologie (1)?

Warum EJB Technologie (1)? Datenbanken und Informationssysteme 2 SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn Datenbanken und Informationssysteme 2 - Prof. Dr. Stefan Böttcher - SS 2004 Folie EJB - 1 Warum EJB Technologie

Mehr

Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise

Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise SEACON, 22./23.6.2009, Hamburg Ralf Degner, Techniker Krankenkasse Überblick Voraussetzungen, Ziele, Entscheidungen Logische Schichten

Mehr

ORACLE Business Components for Java (BC4J) Marco Grawunder

ORACLE Business Components for Java (BC4J) Marco Grawunder ORACLE Business Components for Java (BC4J) Marco Grawunder Gliederung 2 Probleme von J2EE/EJB J2EE-Pattern Lösungsansatz: BC4J Architektur einer BC4J-Anwendung Komponenten Entity Objects View Objects Application

Mehr

Ablauf, Inhalt und Themen SS2014

Ablauf, Inhalt und Themen SS2014 Ablauf, Inhalt und Themen SS2014 Sommersemester 2014 Michael Theis, Lehrbeauftragter 2 Wöchentliche Vorlesung (4 SWS) Start am 21.03.2013 Freitag von 15.15 18.30 Uhr Raum 0.005 Themen werden zu Semesterbeginn

Mehr

Ausgemustert? Der Einfluss von EJB 3.0 auf J2EE Design Patterns. Java Forum Stuttgart, 5. Juli 2007 Stefan M. Heldt

Ausgemustert? Der Einfluss von EJB 3.0 auf J2EE Design Patterns. Java Forum Stuttgart, 5. Juli 2007 Stefan M. Heldt Ausgemustert? Der Einfluss von EJB 3.0 auf J2EE Design Patterns Java Forum Stuttgart, 5. Juli 2007 Stefan M. Heldt Motivation des Vortrags Design Patterns in der Softwareentwicklung Problembeschreibung

Mehr

Enterprise Java Beans

Enterprise Java Beans Enterprise Java Beans Die hohe Kunst der aromatischen Bohnenmischung oder Replikator: Einmal Kaffee, Brasilia Highland Blend, Heiß Motivation Bean = Komponente Datenbank Zielgruppe Kommerzielle Anwendungen

Mehr

Java Beans Enterprise Java Beans. Eine kurze Einführung in die Welt der Bohnen

Java Beans Enterprise Java Beans. Eine kurze Einführung in die Welt der Bohnen Java Beans Enterprise Java Beans Eine kurze Einführung in die Welt der Bohnen Java Beans Einführung Stefan Sauer Was ist ein Java Bean? Beans sind Komponenten. Einmal schreiben Überall wiederverwerten

Mehr

Java Beans (22.02.2001)

Java Beans (22.02.2001) Component Based Software Development Java Beans (22.02.2001) Stefan Jäger Robert Kalcklösch Veranstalter: M. Bittner W. Koch Inhalt Einführung in Java Die Java Beans Einsatz und Entwicklung von Beans Enterprise

Mehr

NoSQL-Datenbanken. Kapitel 1: Einführung. Lars Kolb Sommersemester 2014. Universität Leipzig http://dbs.uni-leipzig.de 1-1

NoSQL-Datenbanken. Kapitel 1: Einführung. Lars Kolb Sommersemester 2014. Universität Leipzig http://dbs.uni-leipzig.de 1-1 NoSQL-Datenbanken Kapitel 1: Einführung Lars Kolb Sommersemester 2014 Universität Leipzig http://dbs.uni-leipzig.de 1-1 Inhaltsverzeichnis NoSQL-Datenbanken Motivation und Definition Kategorisierung, Eigenschaften

Mehr

Überblick über die Windows Azure Platform

Überblick über die Windows Azure Platform Überblick über die Windows Azure Platform Präsentator: Holger Sirtl Kontakt: http://blogs.msdn.com/hsirtl Copyright 2011 Microsoft Corporation. Alle Rechte vorbehalten. MSDN Webcasts: http://www.msdn-online.de/webcasts

Mehr

Seminarvortrag Serviceorientierte Softwarearchitekturen

Seminarvortrag Serviceorientierte Softwarearchitekturen Seminarvortrag Serviceorientierte Softwarearchitekturen vorhandene Altsysteme Gliederung Einführung Grundlegende Modelle Grundlegende Komponenten Architekturen 2 Einführung Altanwendung und Altsysteme?

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans JPA - JAVA Persistence API Problem In JAVA-programmen arbeitet man mit Hauptspeicherobjekten. Nach Beendigung des Programmes sind diese nicht mehr vorhanden.

Mehr

OERA OpenEdge Reference Architecture. Mike Fechner PUG Infotag 19. Mai 05 Frankfurt

OERA OpenEdge Reference Architecture. Mike Fechner PUG Infotag 19. Mai 05 Frankfurt OERA OpenEdge Reference Architecture Mike Fechner PUG Infotag 19. Mai 05 Frankfurt Überblick OERA Separated presentation and integration layers Common business logic with advanced models Data access abstracted

Mehr

Technologische Entwicklung von GIS und Internet der letzten Jahre

Technologische Entwicklung von GIS und Internet der letzten Jahre Technologische Entwicklung von GIS und Internet der letzten Jahre 10. Seminar GIS & Internet 10. bis 12. September 2007 UniBwMünchen Dr. Christine Giger Übersicht GIS vor 30 Jahren GIS vor 20 Jahren GIS

Mehr

Benutzung eines Login Modules zur Authentifizierung unter JBoss 4.0.5

Benutzung eines Login Modules zur Authentifizierung unter JBoss 4.0.5 Benutzung eines Login Modules zur Authentifizierung unter JBoss 4.0.5 Erstellung der Datenbank Tabellen Als Login Module soll das in der JBoss Installation bereits vorhandene DatabaseServerLoginModule

Mehr

REST-Services mit Dropwizard ruck-zuck erstellt, dokumentiert und getestet

REST-Services mit Dropwizard ruck-zuck erstellt, dokumentiert und getestet .consulting.solutions.partnership REST-Services mit Dropwizard ruck-zuck erstellt, dokumentiert und getestet Alexander Schwartz, Principal IT Consultant Berlin Expert Days 2015 REST-Services ruck-zuck

Mehr

Business Applika-onen schnell entwickeln JVx Framework - Live!

Business Applika-onen schnell entwickeln JVx Framework - Live! Business Applika-onen schnell entwickeln JVx Framework - Live! - Enterprise Applica-on Framework h&p://www.sibvisions.com/jvx JVx ermöglicht in kürzester Zeit mit wenig Source Code hoch performante professionelle

Mehr

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes 1 XSS: Cross-Site Scripting 1.) Es gelangen Daten in den Web-Browser, die Steuerungsinformationen

Mehr

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet

Mehr

J2EEKurs. Enterprise JavaBeans Einführung. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.2005. Universität Freiburg, Germany

J2EEKurs. Enterprise JavaBeans Einführung. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.2005. Universität Freiburg, Germany Enterprise JavaBeans Einführung Universität Freiburg, Germany Sommercampus, Freiburg, Germany, 10.-14.10.2005 Inhalt Allgemeines Motivation Rollen Aufbau einer EJB Arten von Beans Enterprise JavaBeans

Mehr

Big Data und Oracle bringen die Logistik in Bewegung

Big Data und Oracle bringen die Logistik in Bewegung OPITZ CONSULTING Deutschland GmbH Dortmund, 07.05.2014 Bild-Quelle: Web-Seite von Pasta ZARA, Big Artikel Data So und entstehen Oracle bringen unsere die Nudeln Logistik in Bewegung http://de.pastazara.com/so-entstehen-unsere-nudeln

Mehr

OO Programmiersprache vs relationales Model. DBIS/Dr. Karsten Tolle

OO Programmiersprache vs relationales Model. DBIS/Dr. Karsten Tolle OO Programmiersprache vs relationales Model Vorgehen bisher Erstellen eines ER-Diagramms Übersetzen in das relationale Datenmodell Zugriff auf das relationale Datenmodell aus z.b. Java ER rel. Modell OO

Mehr

Zwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen

Zwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen Zwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen Brit Engel Überblick Beschreibung Aufgabenstellung Entwurf der Komponenten Verwaltung Funktionsbereiche

Mehr

5. Übung zur Vorlesung Service-orientierte Architekturen

5. Übung zur Vorlesung Service-orientierte Architekturen 5. Übung zur Vorlesung Service-orientierte Architekturen Webservices und WSDL SoSe 2011 Anmerkung Hausaufgabe 03 BPMN Auch hier gilt: Layout! Zu Unterschieden zw. BPMN und eepk Relative Aussagen sind geschickter

Mehr

Effiziente Anwendungs-Entwicklung mittels Business Software Framework BISON Solution

Effiziente Anwendungs-Entwicklung mittels Business Software Framework BISON Solution Effiziente Anwendungs-Entwicklung mittels Business Software Framework BISON Solution Thomas Seiler Product Manager Technology BISON Schweiz AG Agenda Vergleich - Business Software Framework zu.net Framework

Mehr

Big Data Management Thema 14: Cassandra

Big Data Management Thema 14: Cassandra Thema 14: Cassandra Jan Kristof Nidzwetzki Thema 14: Cassandra 1 / 25 Übersicht 1 Grundlagen Überblick Geschichte Datenmodel 2 Architektur Der logische Ring Persistenz der Daten Tunable Consistency Read

Mehr

anaptecs JEAF Plattform JEAF Developer Guide

anaptecs JEAF Plattform JEAF Developer Guide anaptecs JEAF Plattform JEAF Developer Guide : JEAF Framework Die technische Grundlage für Applikationen auf Basis der JEAF Plattform bildet das JEAF Framework. Dabei handelt es sich um ein leichtgewichtiges

Mehr

1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL

1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL 1 Transaktionen in SQL Um Daten in einer SQL-Datenbank konsistent zu halten, gibt es einerseits die Möglichkeit der Normalisierung, andererseits sog. Transaktionen. 2 Was ist eine Transaktion Eine Transaktion

Mehr

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen...

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen... Inhalt HTML- Grundlagen und CSS... 2 XML Programmierung - Grundlagen... 3 PHP Programmierung - Grundlagen... 4 Java - Grundlagen... 5 Java Aufbau... 6 ASP.NET Programmierung - Grundlagen... 7 1 HTML- Grundlagen

Mehr

Softwareschnittstellen

Softwareschnittstellen P4.1. Gliederung Rechnerpraktikum zu Kapitel 4 Softwareschnittstellen Einleitung, Component Object Model (COM) Zugriff auf Microsoft Excel Zugriff auf MATLAB Zugriff auf CATIA Folie 1 P4.2. Einleitung

Mehr

Lightweight Java in der Automatisierungstechnik

Lightweight Java in der Automatisierungstechnik Lightweight Java in der Automatisierungstechnik Erfahrungen aus dem Anlagenbau Dr. Markus Eiglsperger eig@zuehlke.com Business Driver im Anlagenbau Kosten Modularisierung Vernetzung Agilität Paradigmenwechsel

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen Servlets als Controller einer MVC Web Architektur Prof. Dr. Nikolaus Wulff HTTP und HTML Das HyperText TransferProtokoll (HTTP) beschreibt eine einfache verbindungslose Kommunikation,

Mehr

NoSQL-Databases. Präsentation für Advanced Seminar "Computer Engineering", Matthias Hauck, matthias.hauck@stud.uni-heidelberg.de

NoSQL-Databases. Präsentation für Advanced Seminar Computer Engineering, Matthias Hauck, matthias.hauck@stud.uni-heidelberg.de NoSQL-Databases Präsentation für Advanced Seminar "Computer Engineering", Matthias Hauck, matthias.hauck@stud.uni-heidelberg.de Klassische SQL-Datenbanken Anwendungsgebiet: Geschäftsanwendungen Behördenanwendungen

Mehr

Anwendungsentwicklung mit Spring

Anwendungsentwicklung mit Spring Anwendungsentwicklung mit Spring Eberhard Wolff Managing Director Interface21 GmbH Interface21 - Spring from the Source Interface21 Produkte u.a. Spring Framework Spring from the Source Consulting, Training,

Mehr

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen Sommersemester 2014 Michael Theis, Lehrbeauftragter Manager Persistence Context persist flush find Datastore merge flush remove flush

Mehr

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007 Systemprogrammierung Projekt: Java RMI Wintersemester 2006 / 2007 Systemprogrammierung 1. Einleitung 2. Einführung in RPC 3. RMI 4. Code Beispiele 5. Live Vorstellung 6. Ausblick 7. Fazit 2 1. Einleitung

Mehr

Microsoft Azure Fundamentals MOC 10979

Microsoft Azure Fundamentals MOC 10979 Microsoft Azure Fundamentals MOC 10979 In dem Kurs Microsoft Azure Fundamentals (MOC 10979) erhalten Sie praktische Anleitungen und Praxiserfahrung in der Implementierung von Microsoft Azure. Ihnen werden

Mehr

Java Persistence API 2.x. crud + relationships + jp-ql

Java Persistence API 2.x. crud + relationships + jp-ql Java Persistence API 2.x crud + relationships + jp-ql Grundprinzip 10.02.10 2 Problematik Man muss bei der Persistierung immer das Klassenmodell und dessen Umsetzung im Datenmodell (in der DB) berücksichtigen.

Mehr

Architecture Blueprints Ein Leitfaden zur Konstruktion von Softwaresystemen mit Java Spring,.NET, ADF, Forms und SOA

Architecture Blueprints Ein Leitfaden zur Konstruktion von Softwaresystemen mit Java Spring,.NET, ADF, Forms und SOA Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach Architecture Blueprints Ein Leitfaden zur Konstruktion von Softwaresystemen

Mehr

Programmierung von Client/Server- Anwendungen

Programmierung von Client/Server- Anwendungen Programmierung von Client/Server- Anwendungen Komponenten des Web-Containers (Java EE) SoSe2015 Prof. Dr. Andreas Schmietendorf 1 Übersicht zur Vorlesung Entwicklung der Java Enterprise Edition Servlets,

Mehr

SE2-10-Entwurfsmuster-2 15

SE2-10-Entwurfsmuster-2 15 Architektur und Skalierbarkeit SE2-10-Entwurfsmuster-2 15 Skalierbarkeit Skalierbarkeit bedeutet die Anpassung einer Software an wachsende Last: Interaktionsfrequenz Nutzerzahl Anpassung durch Hinzufügen

Mehr

Praktikum Verteilte Anwendungen

Praktikum Verteilte Anwendungen Technische Informatik (Info II) -Sommersemester 2006 - Folie 1 / 27 0 Gliederung 1.) Kurze Wiederholung/ Einleitung 2.) RPC/ RMI 3.) Praktisches Beispiel 4.) Aufgabenblatt Folie 2 / 27 Wiederholung/ Einleitung

Mehr

JAX-RS 2.0 REST mit Java EE 7

JAX-RS 2.0 REST mit Java EE 7 Enterprise Java, Web Services und XML JAX-RS 2.0 REST mit Java EE 7 Java User Group Darmstadt 13. Juni 2013 http://www.frotscher.com thilo@frotscher.com Vorstellung Freiberuflicher Softwarearchitekt und

Mehr

Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version. Schimon.Mosessohn@microsoft.

Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version. Schimon.Mosessohn@microsoft. Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version Schimon.Mosessohn@microsoft.com Herzlich Willkommen 1996 2004 2010 2014 Navision 3.7 Microsoft

Mehr

Der SBB Online-Ticketshop Mit SOA zum Erfolg

Der SBB Online-Ticketshop Mit SOA zum Erfolg Der SBB Online-Ticketshop Mit SOA zum Erfolg BAT 03 Stefan Meichtry, Stefan Becker Bern, den 17.03.2006 SBB Informatik 1 Das Ziel SBB Informatik 2 Agenda Problemraum Lösungsraum Analyse Wir sind hier Synthese

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Development auf der Plattform SAP HANA

Development auf der Plattform SAP HANA Development auf der Plattform SAP HANA SAP HANA Architektur SAP HANA Studio Modellierung auf SAP HANA Web basierte Data Access Role und Berechtigung SAP HANA Plattform SAP HANA als Appliance SAP HANA in

Mehr

Komponentenbasierte Softwareentwicklung

Komponentenbasierte Softwareentwicklung Seminar WS04 Komponentenbasierte Softwareentwicklung Karl Pauls Software-Komponente A software component is a unit of composition with contractually specified interfaces and explicit context dependencies

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Konzept / Architektur Diagramme

Konzept / Architektur Diagramme Architektur-Modell Konzept / Architektur Diagramme Im Übergang Analyse Design wird das System konzipiert und seine Architektur entworfen: Subsystem-Modell (execution view) UML 1.x Package Diagram «subsystem»

Mehr

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht. Technisches Design Inhalt Design Übersicht Menü und DispatcherServlet DWR Servlet Viewer Servlets Controllers Managers Sicherheit Anwendung Architektur Component Diagram Deployment Diagram Komponente Sequence

Mehr

Dirk Reinemann Working Student Sales Consulting

Dirk Reinemann Working Student Sales Consulting JDeveloper 12c in 30 Minutes Dirk Reinemann Working Student Sales Consulting Program Agenda 1. Integrated Development Environment 2. Java Development 3. Web Development 4. Team Development 5. Application

Mehr