Sie befinden sich hier: Home » Seminare » Java » JAVAEJB3

Enterprise JavaBeans (EJB) 3 und Persistence API

Kursziele

Dieser EJB 3 Kurs vermittelt fundiert die Neuerungen aus dem Java Specification Request/JSR 220. Mit den neuen vereinfachten Enterprise JavaBeans in der Version 3 werden wieder einfache ›Plain Old Java Objects‹ (POJO) in den Mittelpunkt gerückt und mit Annotationen aus Java 5 zu wiederverwendbaren Komponenten für den Enterprise Application-Server gemacht. Im ersten Teil des Seminars bilden die Teilnehmer die Geschäftslogik mit Session-Beans, Web-Services und Message-Driven-Beans ab. Im zweiten Teil der Weiterbildung werden mit der ›Java Persistence API‹ (JPA) Entity-Beans modelliert und mit dem Entity-Manager CRUD-Operationen (Anlegen/Löschen/Aktualisieren/Löschen) durchgeführt.

Zielgruppe

Software-Entwickler

Inhalte

[LOGO]
  • Einführung in Enterprise JavaBeans 3 (1. Tag)
    • Komponentenorientierung
    • Mehrschichtige Architekturen
    • EJB-Container
    • Java EE
    • Rollen
    • Bean-Typen
    • Änderungen von EJB 2 zu EJB 3 und von J2EE 1.4 zu Java EE 5
    • Java Persistence Spezifikation und Provider
    • Konfiguration durch Annotationen und externen Deployment Deskriptoren
  • JBoss
    • Bezug und Installation
    • JBoss Installer
    • Namensdienst, ›Java Naming and Directory Interface‹ (JNDI)
    • Deloyment
  • Session-Beans
    • Stateless Session-Bean, @Stateles
    • EJB-Name im JNDI
    • Lokale und entfernte Beans, @Local und @Remote
    • Remote Client
    • Stateful Session-Bean, @Stateful
  • Web-Services
    • Web-Services, SOAP, WSDL, UDDI
    • EJB-Tier Endpoint
    • Web Services, @WebService, @WebMethod
    • JAXB 2
    • Web Services und Interaktionsschichten
  • Message Driven Beans
    • Java Message Service (JMS)
    • Queue, Topic, Publish, Subscribe
    • Definition einer MDB, @MessageDriven
    • Topic- oder Queue-basierte JMS, @ActivationConfigProperty
    • Client-Seite mit JMS
  • Injizierung und Callbacks (2. Tag)
    • Das Prinzip ›Inversion of Control‹ (IoC) und ›Dependency Injection‹
    • EJB-Verweise, @EJB
    • Session-Context
    • Lebenszyklus der Beans
    • Aktivierung, Passivierung
    • Interceptor, InvocationContext
    • Timer, @Timeout
  • Datenbankanbindung mit JPA und Entity-Beans
    • Test-Datenbank
    • Modellierung eines Kunden als EJB 3 Entity-Bean
    • Persistence Unit, META-INF/persistence.xml
    • Entity Manager API
    • Die Typen Persistence, EntityManagerFactory und EntityManger
    • Suchen von Entities, find(), getReference()
    • Direkte Beans und Proxies
    • merge(), remove(), flush(), refresh()
    • FlushMode
    • Autogenerierte Schlüssel, @Id mit @GeneratedValue
  • Forgeschrittene Mapping-Technologien (3. Tag)
    • Physikalisches Mapping (Tabellenname, Spalteneigenschaften)
    • @Table und @Column, @Lob und @Temporal, @Enumeration
    • Logisches Mapping
    • Komponenten, eingebette Objekte
    • Named Queries
    • Assoziationen, 1:1, 1:n, n:m
    • Vererbung
    • CascadeType und FetchType
    • Java Persistence Query Language (JPA-QL/JPQL), ehemals EJB-QL
    • SELECT, FROM, Einschränkungen durch WHERE
    • Gruppierungen durch GROUPBY, HAVING
    • Kartesisches Produkt und Joins
  • Entity Listener
    • Entity-Listeners und Callback-Methoden
    • @PostLoad, @EntityListeners
  • In-Container- und Out-of-Container-Persistence
    • META-INF/persistence.xml mit DataSource
    • Session-Beans als Fassaden
    • EJB 3 Pattern
  • Transaktionen
    • ACID-Prinzip
    • Java Transaction API (JTA)
    • Deklarative Sicherheitseinstellungen
    • Transaktionsattribute, @TransactionAttribute
  • Sicherheit
    • Benutzer und Rollen
    • JAAS
    • Login-Module von JBoss
    • Security-Domains
    • Annotationen für SecurityDomain, Rechte
    • Client
    • Programmierte Sicherheit

Voraussetzungen

Kenntnisse in Java 5. Vorwissen im Bereich Java EE 1.4 ist nützlich, aber nicht erforderlich.

Seminarunterlagen

Deutschsprachige Unterlagen (Kopien der Folien mit Inhaltsverzeichnis und Index), Zertifikat.

Software

Als Laufzeitumgebung wird standardmäßig Java SE 6 von Sun zusammen mit der Entwicklungsumgebung Eclipse 3.4 eingesetzt (Paket Eclipse IDE for Java EE Developers). Auf Wunsch auch NetBeans oder andere Entwicklungsumgebungen. Der Applikationserver für EJB 3 ist standardmäßig JBoss 5.

Empfohlene Dauer

3 Tage, insgesamt 18 Zeitstunden