Jakarta EE - Backendentwicklung mit EJB und JPA

Classroom Schulung | Deutsch | Anspruch

Schulungsdauer: 3 Tage

Ziele

Sie erhalten Know-How für Techniken der serverseitigen Java Softwareentwicklung. Speziell die Techniken im Backend haben sich innerhalb der Java/Jakarta EE Versionen stark geändert. Während die früheren EJBs 2.x noch als schwergewichtig und überladen kritisiert wurden, hielt ab EJB 3.0 ein komplett neu designtes Modell Einzug, in dem die EJBs sehr leichtgewichtige Objekte geworden sind, welche in den folgenden Releases noch verfeinert wurden, z.B. kann man man jetzt Session Beans auch asynchron aufrufen. Mit sehr wenig Overhead kann man die umfangreichen Services wie Pooling, Transaktionalität und Absicherung erhalten. XML-Konfigurationsdateien werden nur noch an wenigen Stellen benötigt.

Für das Zusammenspiel mit relationalen Datenbanken innerhalb der EE ist JPA zuständig, hier werden speziell auch die Punkte behandelt, die neu dazugekommen sind, beispielsweise die Attribute Converter, mit denen man etwa die Date/Time Klassen aus Java 9 in Entities verwenden kann. JPA kann zwar auch unabhängig von EJB verwendet werden, doch im Zusammenspiel erhält man Erleichterungen wie automatische Transaktionen bei den Methoden der EJBs.

Somit kennen die Teilnehmer nach dem Kurs die eleganten und leistungsfähigen Möglichkeiten, das Backend einer Jakarta EE - Anwendung zu gestalten. Als Server wird Wildfly eingesetzt, per Vereinbarung sind auch andere möglich.

Zielgruppe

  • Softwareentwickler

Voraussetzungen

  • Routinierte Java Kenntnisse
  • Grundkenntnisse SQL und Client-Server-Entwicklung

Agenda

Einführung

  • Entwicklung der Mehrschichtenarchitektur
  • Historie der Java Enterprise Edition - von J2EE zur Java EE
  • Einordnung im Vergleich zum Spring Framework
  • Marktübersicht Application Server

Session Beans

  • Zustandslose Session Beans als Hauptkomponente
  • Deploymentoptionen
  • Interceptoren für aspektorientierte Konzepte
  • Zustandsbehaftete Session Beans
  • Singleton Beans
  • Remote und Web Clients
  • Das reduzierte Webprofil der Java EE

Entities

  • ORM: Von Entity Beans zu Entities
  • Persistente Objekte
  • Die Beziehungen zwischen Entities
  • Nicht alles ist eine Entity: Einbettung
  • Mehr Flexibilität durch Value Converter
  • Eigene Klassen für den Primary Key

Weitere JPA Features

  • Abbildung von Collections
  • Problematik Lazy Loading
  • Entity Graph
  • Die umfangreiche Query Language
  • Locking Strategien
  • Transaktionen
  • Injektionsmöglichkeiten mit CDI

Asynchronität

  • Message Driven Beans und JMS
  • Client Standalone oder Session Bean
  • TimerService
  • Scheduling

Sicherheit

  • Konfiguration
  • Absicherung auf Web Ebene
  • Absicherung auf EJB Ebene

Web Services

  • Bestandteile der klassischen Art: SOAP, WSDL
  • JAX-WS
  • Generierter Client
  • REST Services
  • Datenformat XML mit JAXB
  • Datenformat JSON mit JSON-P und JSON-B

Ziele

Sie erhalten Know-How für Techniken der serverseitigen Java Softwareentwicklung. Speziell die Techniken im Backend haben sich innerhalb der Java/Jakarta EE Versionen stark geändert. Während die früheren EJBs 2.x noch als schwergewichtig und überladen kritisiert wurden, hielt ab EJB 3.0 ein komplett neu designtes Modell Einzug, in dem die EJBs sehr leichtgewichtige Objekte geworden sind, welche in den folgenden Releases noch verfeinert wurden, z.B. kann man man jetzt Session Beans auch asynchron aufrufen. Mit sehr wenig Overhead kann man die umfangreichen Services wie Pooling, Transaktionalität und Absicherung erhalten. XML-Konfigurationsdateien werden nur noch an wenigen Stellen benötigt.

Für das Zusammenspiel mit relationalen Datenbanken innerhalb der EE ist JPA zuständig, hier werden speziell auch die Punkte behandelt, die neu dazugekommen sind, beispielsweise die Attribute Converter, mit denen man etwa die Date/Time Klassen aus Java 9 in Entities verwenden kann. JPA kann zwar auch unabhängig von EJB verwendet werden, doch im Zusammenspiel erhält man Erleichterungen wie automatische Transaktionen bei den Methoden der EJBs.

Somit kennen die Teilnehmer nach dem Kurs die eleganten und leistungsfähigen Möglichkeiten, das Backend einer Jakarta EE - Anwendung zu gestalten. Als Server wird Wildfly eingesetzt, per Vereinbarung sind auch andere möglich.

Zielgruppe

  • Softwareentwickler

Voraussetzungen

  • Routinierte Java Kenntnisse
  • Grundkenntnisse SQL und Client-Server-Entwicklung

Agenda

Einführung

  • Entwicklung der Mehrschichtenarchitektur
  • Historie der Java Enterprise Edition - von J2EE zur Java EE
  • Einordnung im Vergleich zum Spring Framework
  • Marktübersicht Application Server

Session Beans

  • Zustandslose Session Beans als Hauptkomponente
  • Deploymentoptionen
  • Interceptoren für aspektorientierte Konzepte
  • Zustandsbehaftete Session Beans
  • Singleton Beans
  • Remote und Web Clients
  • Das reduzierte Webprofil der Java EE

Entities

  • ORM: Von Entity Beans zu Entities
  • Persistente Objekte
  • Die Beziehungen zwischen Entities
  • Nicht alles ist eine Entity: Einbettung
  • Mehr Flexibilität durch Value Converter
  • Eigene Klassen für den Primary Key

Weitere JPA Features

  • Abbildung von Collections
  • Problematik Lazy Loading
  • Entity Graph
  • Die umfangreiche Query Language
  • Locking Strategien
  • Transaktionen
  • Injektionsmöglichkeiten mit CDI

Asynchronität

  • Message Driven Beans und JMS
  • Client Standalone oder Session Bean
  • TimerService
  • Scheduling

Sicherheit

  • Konfiguration
  • Absicherung auf Web Ebene
  • Absicherung auf EJB Ebene

Web Services

  • Bestandteile der klassischen Art: SOAP, WSDL
  • JAX-WS
  • Generierter Client
  • REST Services
  • Datenformat XML mit JAXB
  • Datenformat JSON mit JSON-P und JSON-B

Tags

Diese Seite weiterempfehlen