Enterprise JavaBeans

Werbung
Enterprise JavaBeans
(mit JBoss)
Christian Hülsmeier
30.10.2004
Enterprise JavaBeans (mit JBoss)
Überblick
ƒ Rekapitulation des vorhandenen Wissen
ƒ Entity-Beans
ƒ Session-Beans
ƒ Deployment-Deskriptor
ƒ Sichten / Client-Anwendungen
ƒ Applikationsserver (JBoss)
ƒ Fallbeispiel
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 2
1
Enterprise JavaBeans (mit JBoss)
Rekapitulation des vorhandenen Wissen
ƒ Was ist Enterprise JavaBeans?
ƒ verschiedene Beantypen (Entity- und Session-Beans)
ƒ Bestandteile einer Enterprise JavaBean
ƒ ein Client benutzt verschiedenen Interfaces, um Zugriff auf
eine Bean zu erlangen
ƒ Beans werden mit Hilfe eines Deployment-Deskriptor in
einem Applikationsserver bereit gestellt
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 3
Enterprise JavaBeans (mit JBoss)
Entity-Beans
ƒ Geschäftsobjekt, dessen Daten sich in einem dauerhaften
Speicher befinden, z.B. eine relationale Datenbank
ƒ vergleichbar mit Entitäten im E-R-Modell
oder einfacher: Tabelle in einer Datenbank
ƒ zentrale Ressource
⇒ Bean-Instanz von mehreren Clients gleichzeitig genutzt
ƒ Applikationsserver synchronisiert gleichzeitige Zugriffe auf
die Bean-Instanzen
ƒ wird eine Instanz nicht (mehr) benötigt, so wird sie „gepoolt“,
d.h. die Instanz ist keinem EJB-Objekt zugeordnet
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 4
2
Enterprise JavaBeans (mit JBoss)
Entity-Beans
Es gibt zwei verschiedene Persistenzformen:
ƒ
Bean-Managed-Persistence (BMP)
-
ƒ
Entwickler stellt Persistenz via SQL selber sicher
Container-Managed-Persistence (CMP)
-
Applikationsserver übernimmt Persistenz
⇒ O-R-Mapping
-
Foreign-Key-Beziehungen zwischen Entity-Beans über
Container-Managed-Relationsships (CMR)
-
O-R-Mapping und CMR im Deplyoment-Deskriptor
-
Suchanfragen mittels EJB QL (ähnelt SQL)
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 5
Enterprise JavaBeans (mit JBoss)
Session-Beans
ƒ Geschäftsobjekt, das die Logik eines Geschäftsprozesses
realisiert
ƒ Einsatz bei Zugriff aus konzeptübergreifende Daten
ƒ serverseitige Erweiterung einer Anwendung
ƒ Zusammenhang Session- und Entity-Beans wie
„Drehbuch zu Schauspieler“
ƒ Unterscheidung von zustandslosen (stateless) und
zustandsbehafteten (statefull) Session-Beans
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 6
3
Enterprise JavaBeans (mit JBoss)
Session-Beans
ƒ Stateless Session-Beans
- keinen persistenten Zustand ⇒ leichtgewichtig
- Lebensdauer bezogen auf Client: ein Methodenaufruf
- Beispiel:
Erzeugen von Berichten, Überprüfen von Kreditkarten
- i.A.: generische, wiederverwendbare Dienste
ƒ Statefull Session-Beans
- persistenter Zustand ⇒ schwergewichtig
- Lebensdauer bezogen auf Client: Dauer einer Sitzung
- Beispiel:
Einkaufswagen
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 7
Enterprise JavaBeans (mit JBoss)
Deployment-Deskriptor
ƒ ähnelt einer Eigenschaftsdatei
ƒ Konfiguration des Verhalten der Komponente
ƒ Inhalte:
- Bean-Definition
- CMP-Felder-Definitionen
- CMR-Definitionen
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 8
4
Enterprise JavaBeans (mit JBoss)
Sichten / Client-Anwendungen
ƒ EJB als Client einer EJB
- Zugriff über lokale Interfaces
ƒ Web-Applikation als Client einer EJB
- Zugriff über entfernte Interfaces, obwohl (evtl. im
gleichen Server)
ƒ Java-Anwendung als Client einer EJB
- Zugriff über entfernte Interfaces
⇒ lokale Interfaces wurden eingeführt, da es keinen Sinn
machte, dass EJBs auch über RMI auf andere EJB zugreifen
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 9
Enterprise JavaBeans (mit JBoss)
Applikationsserver (JBoss)
ƒ Geschäftsprozesse im Internetbeherrschbar machen
ƒ Kombination aus Technologien wie:
Webservern, ORBs, MOM, Datenbanken etc.
ƒ Laufzeitumgebung für EJB-Container
ƒ EJB-Container: Laufzeitumgebung für EJB-Komponenten
ƒ Persistenz-Manager: ermöglicht CMP
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 10
5
Enterprise JavaBeans (mit JBoss)
Applikationsserver (JBoss)
ƒ JBoss ist ein Open-Source-Applikationsserver
ƒ aktuelle Version(en):
3.2.3 (stable) und 4.0 (developer release)
ƒ Kostenlos, aber Dokumentation und Support
(weitestgehend) kostenplichtig
ƒ bietet laut Herstellen vollen J2EE-Support
ƒ aber(!!!): (noch) nicht J2EE-zertifiziert
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 11
Enterprise JavaBeans (mit JBoss)
Fallbeispiel
Beispiel: Seminarverwaltung
ƒ Session-Beans
Seminarverwaltung
(Funktionen zum An-/Abmelden von Seminaren und
Anlegen von Seminaren, Studenten und Dozenten)
ƒ Entity-Beans
Student, Seminar, Dozent, Lehrgebiet
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 12
6
Enterprise JavaBeans (mit JBoss)
Diskussion
Fragen?
Nein? Dankeschön!
Diskussion!
Enterprise JavaBeans (mit JBoss) ƒ 30.10.2004 ƒ Folie 13
7
Herunterladen