Column #col2
Beschreibung: EJB/JEE-Workshop
1. EJB-Grundlagen
Hier erfahren Sie, wie Sie sich mit Hilfe von Enterprise-JavaBeans (EJBs) bei der Entwicklung verteilter Systeme auf die Erstellung der Anwendungslogik konzentrieren können, ohne Basisdienste (wie z.B. Verteilung, Persistenz, Transaktionslogik) entwickeln zu müssen. Dabei lernen Sie, dass eine Enterprise-JavaBean (EJB) die Anwendungslogik enthält und jede EJB in einem Container ausgeführt wird, der die Basisdienste zur Verfügung stellt.
2. Technikgrundlagen der EJBs
Sie lernen hier die Architektur und die grundlegende Funktionsweise eines EJB-Containers kennen. Dabei werden einerseits die nötigen Basistechnologien für EJBs (u.a. CORBA und JNDI) kurz vorgestellt und andererseits die grundlegenden Bestandteile einer EJB erklärt (u.a. "Home"- und "Remote"-Schnittstelle sowie das Deskriptor-Konzept, das hohe Wiederverwendung ermöglicht).
3. Stateless Session Beans
Sie lernen die sog. "Stateless Session Beans" kennen, die in einer Anwendung für zustandslose Dienste (z.B. Abfragen an Datenbanken) und einstufige Workflows (wie Neuanlage und Verändern von Anwendungsobjekten) verwendet werden können.
4. Ressourcen und Datenbankanbindung
Moderne verteilte, unternehmensweite Systeme verwenden als Persistenzschicht in der Regel ein relationales Datenbanksystem, auch wenn die Anwendungslogik objektorientiert entwickelt wird. In diesem Abschnitt lernen Sie, wie die OO-Logik, die mit Hilfe der EJBs realisiert wird, mit relationalen Datenbanken gekoppelt wird. Dabei wird auch auf die EJB 2.0-Spezifikation eingegangen. Darüber hinaus lernen Sie Zugriffsmöglichkeiten auf weitere Ressourcen (u.a. auf feste Parameter und auf E-Mail-Dienste) kennen.
5. Transaktionen
Verteilte, unternehmensweite Systeme benötigen immer eine Transaktionslogik, um bei komplexen Abläufen sowie bei auftretenden Fehlern konsistente Daten zu garantieren. In diesem Abschnitt lernen Sie nicht nur die einfache deklarative Steuerung von Transaktionen kennen, sondern auch komplexere Transaktionssteuerungen, die in der Regel nur für Sonderfälle nötig sind. Darüber hinaus erfahren Sie, wie ein EJB-Container sein Transaktionsverhalten mit angeschlossenen Datenbanken synchronisiert.
6. Stateful Session Beans
In diesem Abschnitt lernen Sie nicht nur die Einsatzmöglichkeiten und die Funktionsweise von "Stateful Session Beans" kennen, die für mehrstufige Workflows verwendet werden, also Workflows, in denen Zustandsinformationen über die einzelnen Schritte hinweg am Server gehalten werden müssen (z.B. bei der Realisierung eines Warenkorbs). Sie lernen außerdem, wie man "Stateful Session Beans" entwirft und entwickelt.
7. Entity Beans
In diesem Abschnitt lernen Sie das Design, die Programmierung und die Funktionsweise der "Entity Beans" kennen. Sie erfahren, dass "Entity Beans" die Anwendungsobjekte auf Serverseite darstellen und dass damit ein objektorientiertes Design und eine objektorientierte Programmierung am Server ermöglicht wird. Sie lernen die Vorteile (wie Replikation und deklarative Transaktionssteuerung) sowie die Grenzen (z.B. bei hochperformanten Abfragen) von "Entity Beans" kennen.
8. OO- und Programmierkonzepte
In diesem Abschnitt lernen Sie das Lebenszyklusmodell kennen, das hinter EJBs steht, wobei die klare EJB-Rollenaufteilung, wie etwa "Bean Provider"=Entwickler oder "Assembler"=Applikationsersteller, vorgestellt wird. Sie erfahren außerdem, welche Konsequenzen daraus für das Design, die Entwicklung und die Qualitätssicherung entstehen. Zum anderen lernen Sie, wie wichtige OO- und Programmierkonzepte (u.a. die Vererbung, Patterns wie Observer oder Singletons) in einem EJB-System eingesetzt werden und wo ihre Grenzen sind.
