J2EE - Lehrstuhl für Angewandte Informatik

Werbung
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
Verteilte Anwendungen:
J2EE
Dr. Wolfgang Wörndl
26.04.2004
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
Überblick

2. Einleitung
– 2.5. Einflußreiche verteilte Systeme






2.5.1. Amoeba
...
2.5.4. Network File Service (NFS)
2.5.5. Java 2 Enterprise Edition
auch kurzer Überblick über JavaBeans
3. Architektur verteilter Anwendungen
– 3.2. Systemmodelle
© Dr. Wolfgang Wörndl, 23.04.2004
2
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
J2EE Überblick


J2EE als Standard mit Implementierungen
verschiedener Anbieter
J2EE Konzept
–
–
–

Modell für die Programmierung verteilter
Anwendungen
Menge von APIs
Laufzeitumgebung
Mehrere Schichten
–
–
–
Client-Schicht: Anwenderkomponenten, Applets
Web Server-Schicht: Servlets, JSP
Anwendungsserver-Schicht
© Dr. Wolfgang Wörndl, 23.04.2004
3
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
J2EE Architektur
J2EE container
J2EE container
Web-Container
EJB Container
Java-Servlets
Enterprise
Java Beans
JSP Pages
JAF
JavaMail
JMS
JDBC
JTA
JNDI
RMI/IIOP
JAF
JavaMail
JMS
JDBC
JTA
JNDI
RMI/IIOP
Application
Clients
J2EE Application Server
data storage
© Dr. Wolfgang Wörndl, 23.04.2004
4
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
J2EE Container

Aufgaben
–
–

Verfügbare Container
–
–
–
–

Laufzeitumgebung, um Anwendungskomponenten
zu verwalten
Zugriff auf J2EE APIs
Web container: Java Servlets, JSP
EJB container
Applet container
Application container: Standard Java Anwendung
Module in Archiv-Datei, beschrieben von
einer XML-Datei
© Dr. Wolfgang Wörndl, 23.04.2004
5
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
J2EE Anwendung
J2EE application (EAR File)
application.xml
EJB module
Web module
Java module
EJB module (JAR File)
Web module (WAR file)
Java module (JAR file)
ejb-jar.xml
web.xml
application-client.xml
EJB
EJB
Web
Web
© Dr. Wolfgang Wörndl, 23.04.2004
Java
Java
6
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
J2EE APIs

Java 2 Application Programming
Interfaces
– JNDI: Java Naming and Directory Interface
– JTA: Java Transaction API
– JDBC: Java Database Connectivity
Framework
– JMS: Java Message Service
– JAAS: Java Authentication and
Authorization Service
– JAF: JavaBeans Activation Framework
© Dr. Wolfgang Wörndl, 23.04.2004
7
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
JavaBeans Einführung

Komponentengedanke wird in Java
nicht direkt unterstützt
– JavaBeans ist die Spezifikation eines
Komponentenmodells für Java



Faßt mehrere Klassen und Ressourcen
zusammen
Keine Unterscheidung zwischen Beans und
Beans-Instanzen
Ziel: Einfaches Zusammenfügen von
Komponenten, ggf. mit visueller
Programmierung
© Dr. Wolfgang Wörndl, 23.04.2004
8
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
JavaBeans Varianten

Varianten von JavaBeans
– Session Beans


Pro Client
Stateful oder stateless
– Entity Beans

Persistente Daten
– Message-driven Beans

Jede Klasse in Prinzip eine JavaBean
– Beachtung gewisser Konventionen wichtig,
um Kompositions- und Anpassungsfähigkeit zu unterstützen
© Dr. Wolfgang Wörndl, 23.04.2004
9
Technische Universität München, Informatik XI
Angewandte Informatik / Kooperative Systeme
Charakterisierung von JavaBeans



Eigenschaften: get/set Methoden
Ereignisse: event listener
Introspektion
– Methoden etc. einer JavaBean abfragbar


Anpassbarkeit
Persistenz
– Dauerhafte Speicherung

Objektserialisierung
– Schreiben in Datenstrom
© Dr. Wolfgang Wörndl, 23.04.2004
10
Herunterladen