Was sind Enterprise JavaBeans?

13.02.2017

Enterprise JavaBeans (EJB’s) werden unter Java EE (Enterprise Edition) serverseitig eingesetzt, um Client/Server Systeme umzusetzen. Will man eine Java EE Applikation bauen, kommt man darum um EJB’s nicht herum. (Siehe Tomcat oder Websphere? )

In den EJB’s wird hauptsächlich Geschäftslogik eingebaut. Die ursprüngliche Idee war es, dass sich ein Programmierer mehr auf die Geschäftslogik konzentrieren konnte.

Der Einsatz von EJB’s passiert hauptsächlich auf der Stufe Anwendungsserver – Siehe Was ist ein verteiltes System?

Wie kann ich mir eine EJB vorstellen?

Nun, eine Enterprise JavaBean ab Version 3.0 ist schlussendlich nur ein einfaches POJO – Ein Plan Old Java Object.

Ein POJO ist eine einfache Java Klasse mit Attributen wie zum Bespiel Name und Vorname. Zu den Attributen gibt es klassischerweise Getter und Setter, um die Werte von ausser zu setzen oder zu holen.

Bei den EJB’s werden diese POJO’s noch mit Annotationen angereichert, um ihnen gewisse Eigenschaften zu verleihen.

Sie sehen also, dass EJB’s eigentlich nichts kompliziertes sind.

Wo kann EJB den Programmierer unterstützen?

Die EJB Technologie entlastet einen Programmierer bei der Übertragung der Daten vom Client zum Server, der Datenhaltung, der Systemüberwachung und bei allen Aspekten der Security wie etwa der Zugriffssicherheit. Diese Aufgaben übernimmt der Java EE Application Server.

Welche Typen von EJB’s gibt es?

Grundsätzlich unterscheidet man drei verschiedene EJB Typen:

1. Bei Stateless Session Beans sind zwei aufeinanderfolgende Aufrufe voneinander unabhängig und kennen sich grundsätzlich nicht. Eine solche Klasse hat keinen Zustand.

2. Bei Stateful Session Beans haben die Beans einen Status. Darum können Aufrufe hintereinander aufeinander aufbauen. Man spricht dabei von einem Zustandsautomaten. Der Zustand eines solchen Beans bleibt also bestehen über einen Methodenaufruf hinweg. Ein Client ist über mehrere Methodenaurufe hinweg an dasselbe Bean gebunden, bis dieses zerstört wird.

3. Bei Entities handelt sich um die bereits erwähnten simplen POJO’s. Genauer gesagt steckt hinter einer Entity am Ende ein konkretes Objekt, etwa ein Konto oder eine Transaktion.

Die Geschäftslogik steckt in den Session Beans – Etwa das Ausführen einer Transaktion, das addieren zweier Zahlen oder sonst eine Operation.

Entities sind Klassen aus der objektorientierten Welt und werden verwendet, um Daten in Datenbanken zu speichern (Thema objekt-relationales Mapping, siehe Was ist JPA? ).

Gibt es sonst noch etwas Erwähnenswertes?

Für einen Einstieg in Enterprise JavaBeans sollte dieser Artikel genügen. Man könnte vielleicht noch anmerken, dass EJB’s von einem sogenannten EJB-Container verwaltet werden beziehungsweise darauf laufen. Diesem kann dann auch mitgeteilt werden, wie er mit einer EJB umgehen soll, ob er etwa eine Bean für jeden Client neu instanzieren soll oder alle Clients eine Bean miteinander teilen.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit deinem WordPress.com-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s