Enterprise JavaBeans (EJB 2.1) mit XDoclet
Empfohlene Schulungsdauer: 3 Tage, insgesamt 18 Zeitstunden
Kursziele
Die ›Java 2 Platform Enterprise Edition‹ von Sun Microsystems unterstützt die Entwicklung von mehrschichtigen, verteilten Anwendungen. Zum Aufbau wieder verwendbarer, verteilter Komponenten dienen die ›Enterprise JavaBeans‹ (EJB). Ein Applikationsserver stellt dabei eine Ablaufumgebung für EJBs bereit und übernimmt Transaktionsmanagement, Sicherheitskontrolle, Verzeichnisdienst, Persistierung und weitere Dienste. Der Kurs vermittelt, wie EJB 2.1-Komponenten unter Verwendung des offenen Applikations-Servers JBoss erstellt werden. Ausführlich lernen die Teilnehmer die drei Bean-Typen des Standards kennen: Statusbehaftete und statuslose Session-Beans, Message-Driven-Beans und Entity-Beans. In praktischen Übungen modellieren sie Geschäftslogiken in Session-Beans, speichern Geschäftsdaten in Entity-Beans und verarbeiten asynchrone Nachrichten über Message-Driven-Beans. Zudem gibt es aus dem Entwickleralltag effektive Deployment-Strategien, grundlegende J2EE-Entwurfsmuster und Best-Practices für Aufbau und Pflege großer geschäftskritischer Java-Anwendungen. Die Inhalte bauen auf den EJB 2.1-Standard auf, der Teil der J2EE 1.4-Spezifikation ist.
Zielgruppe
Software-EntwicklerVoraussetzungen
Der Kurs ›Java für Fortgeschrittene‹, ›Java für Umsteiger‹ oder vergleichbare Kenntnisse sowie Grundlagen der ›Java Enterprise Edition‹ (Java EE).Seminarinhalte
![[LOGO]](../../images/seminare/logos/java.png)
- Einführung in ›Enterprise JavaBeans‹
- Komponentenorientierung und mehrschichtige Architekturen
- J2EE 1.4 Container, Bestandteile eines Applikationsservers, EJB-Container
- Rollen - Applikationsserver JBoss
- JBoss Lizenzmodell
- Bezug und Installation
- Verwaltung mit MBeans - Bean-Typen
- Session Beans, Entity Beans, Message Driven Beans
- Bestandteile einer Bean-Beschreibung (Deployment Deskriptor)
- Component- und Home-Interface - Die erste Session Bean mit XDoclet und Client
- Installation und Einrichtung der Entwicklungsumgebung
- Ein EJB-Projekt aufbauen
- Erste Session Bean,@ejb.bean
- Deklarationsorientierte Programmierung
- XDoclet und erzeugte Dateien, Packaging
- Deployment in JBoss
- Der erste Client, Ausblick auf Service-Locator-Pattern - XDoclet und der Deployment-Deskriptor
- XDoclet-Tags und -Namensräume
- Ant und XDoclet-Tasks (<ejbdoclet>)
- Dateienbuild.xmlundxdoclet.xml
- Subtasks:<session/>,<remoteinterface/>, ...
- MDA (Model Driven Architecture)
- Blick auf den Deployment-Deskriptor - Session Beans
-create()undejbCreate()
- Lebenszyklus Stateless Session Bean
- DerEJBContext
- Die SchnittstelleEnterpriseBean
- Methoden der Home-Schnittstelle, die SchnittstelleEJBHome
- Methoden der Remote-Schnittstelle, die SchnittstelleEJBObject
- Remote- und Home-Handle
- Lebenszyklus Stateful Session Bean (Aktivierung, Passivierung)
- Wann Stateless- und Stateful Session Beans?
- J2EE-Pattern Business Interface.remote-business-interface
- Neue Datenquellen eintragen.@ejb.resource-ref,@jboss.resource-ref - Lokale EJBs
- Derview-typein XDoclet und generierte Dateien
-EJBLocalObjectundEJBLocalHome
-jndi-nameundlocal-jndi-name
- Ortstransparenz, Semantik bei Übergabe und Rückgabe
- Kriterien für lokale und entfernte EJBs
- Zusammenhang: Remote-Zugriffe über RMI und entfernte EJBs
- Parameterübergabe bei RMI-Aufrufen, Remote-Ausnahmen
- Einsatzgebiet RMI-IIOP für CORBA - Entity Beans
- Lebenszkylus einer Entity Bean
- Schlüssel
- Persistente Attribute
-ejbCreate(), Löschen,ejbPostCreate()
- ›Container Managed Persistence‹ (CMP)
- ›Bean Managed Persistence‹ (BMP)
- Eigene Schlüsselklassen
- Relationen 1:1, 1:n, n:m zwischen Entity-Beans
- Relationen mit ›Container Managed Relations‹ (CMR) umsetzen
- Transfer Object ›Data Transfer Object‹ (DTO) und ›Service Data Objects‹ (SDOs)
- J2EE Pattern Session Fassade - Die Anfragesprache EJB Query Language
- Aufgaben der ›Enterprise JavaBeans Query Language‹ (EJB QL)
- Finder- und Select-Methoden
- Parametrisierte Anfragemethoden - ›Bean Managed Persistence‹ (BMP)
- BMP versus CMP
- Datenbankanbindung mit JDBC
- BMP programmieren, Lebenszyklus - Message Driven Beans
- Java Message Service (JMS)
- Modelle Point-to-Point (Nachrichtenwarteschlangen) und Publish-Subscribe (Anmelde-Versendesystem)
- Schnittstellen und Listener
- Lebenszyklus einer MDB - Die Timer-API
- Der Timer-Dienst eines Applikationsservers
-TimedObject
- Verhalten vonejbTimeout()auf den unterschiedlichen EJBs
-TimerService
- Timer-Typen und Ausfallschutz
- Die SchnittstelleTimerund Zusatzinfos
-TimerHandle - Transaktionen und Sicherheit
- ACID-Prinzip
- ›Java Transaction API‹ (JTA)
- Deklarative Transaktionseinstellungen
- TransaktionsattributeNotSupported,Required,Supports,RequiresNew,Mandatory,Never
-SessionSynchronization
- Isolationsgrade
- Sicherheitsarchitektur
- Deklarative Sicherheitseinstellungen - Ausblick auf Java EE 5 und EJB 3, Alternativen
- Änderungen beim Java EE-Standard
- Der EJB 3-Standard
- Müssen es immer EJBs sein? (Persistenz-Alternative Hibernate), JPA
- IoC-Container, Dependency-Injection, Spring-Framework
Seminarunterlagen
Deutschsprachige Unterlagen (Kopien der Folien), Zertifikat.
Software
Als Laufzeitumgebung wird standardmäßig Java SE 6 von Sun zusammen mit der Entwicklungsumgebung Eclipse 3.5 eingesetzt (Paket ›Eclipse IDE for Java EE Developers‹). Auf Wunsch auch NetBeans 6 oder andere Entwicklungsumgebungen (IntelliJ IDEA, Oracle JDeveloper). Der EJB-Applikationserver ist standardmäßig JBoss 5. Die Inhalte sind aber grundsätzlich containerunabhängig und die Anwendungen können auf den unterschiedlichen Applikationsservern, wie IBM WebSphere, Oracle Application Server, BEA WebLogic oder GlassFish laufen. Als Entwicklungsumgebung wird standardmäßig die ›Eclipse IDE for Java EE Developers‹ eingesetzt.
Schlagwörter
Unternehmen
- JBoss
- Red Hat
tutego™ bietet Ihnen viele weitere Schulungen. Unsere Kategorien: Java, .NET (C#, VB.NET, ASP.NET, ...), Programmiersprachen (iPhone, PHP, ...), Softwaredesign (UML, Pattern, ...), XML (XSLT, Schema), SAP (ABAP, ...), Server Administration (SVN, Apache, ...), Datenbanken (Oracle, MySQL, ...), Web-Programmierung (JavaScript, jQuery, Flex), Microsoft Office, AutoCAD, Sage KHK, Lotus Notes/Domino.
![Zu einem Bookmark-Anbieter hinzufügen [Addthis]](../../images/bookmarks/addthis.gif)
![Zu Google Bookmarks hinzufügen [Google Bookmarks]](../../images/bookmarks/google.png)
![Zu Yahoo! Bookmarks hinzufügen [Yahoo! Bookmarks]](../../images/bookmarks/yahoo.png)
![Zu Delicius hinzufügen [Delicius]](../../images/bookmarks/delicious.png)
![Zu Mister Wong hinzufügen [Mister Wong]](../../images/bookmarks/misterwong.png)