5 Verantwortlichkeiten des Enterprise JavaBean Containers

5 Zuständigkeiten des Enterprise JavaBean Containers - Dummies

Teil von Enterprise JavaBeans für Dummies Cheat Sheet

Der Enterprise JavaBeans (EJB) -Container ist für die Bereitstellung einer Reihe von Services für Ihre EJB-Programme verantwortlich. Die Dienste, die der EJB-Container bereitstellen muss, werden von der Enterprise JavaBean-Spezifikation aufgezählt. Das bedeutet, dass Sie Ihr EJB in jedem beliebigen, mit der Spezifikation konformen Container bereitstellen und alle Vorteile der mandantenfähigen Dienste nutzen können. Diese Dienste umfassen die folgenden Hauptfunktionen:

  • EJB-Container bieten Unterstützung für die dezentrale und lokale Kommunikation zwischen Ihren EJB-Komponenten und Client-Anwendungen. Dies wird auf eine Art und Weise durchgeführt, die für Sie praktisch transparent ist, so dass Sie sich keine Gedanken darüber machen müssen, wie es implementiert wird, wenn Sie EJB-Komponenten entwickeln.

  • EJB-Container stellen den EJB-Komponenten Pool und Cache Dienste bereit. Ein Pool ist ein Repository von nicht verwendeten EJB-Komponenten, die bei Bedarf an einen Client geliefert werden. Ein Cache ist ein Speicherbereich für EJB-Komponenten, die einem Client-Programm zugewiesen sind, aber derzeit nicht verwendet werden. Diese Dienste minimieren die Speicheranforderungen für den EJB-Container und bieten gleichzeitig einen Hochleistungsservice für das Clientprogramm.

  • EJB-Container müssen Sicherheitsdienste für EJB-Programme bereitstellen. Wenn Sie eine Anwendung implementieren, können Sie diese Dienste gemäß den in der Spezifikation angegebenen Richtlinien konfigurieren. Sie müssen jedoch keine spezielle Programmierung durchführen, um sie zu nutzen.

  • EJB-Container müssen Transaktionsdienste für EJB-Programme bereitstellen. Transaktionen definieren Arbeitseinheiten, die alle erfolgreich sein müssen oder alle als Satz fehlschlagen. Transaktionen können viele EJB-Programme enthalten, einschließlich EJB-Programme, die sich auf entfernten Computern befinden. Die Transaktionsmerkmale eines EJB-Containers können konfiguriert werden, wenn Ihre EJB-Anwendung bereitgestellt wird, aber Sie benötigen nur wenig bis gar keine spezielle Programmierung von Ihnen als EJB-Entwickler.

  • EJB-Container bieten eine transparente Integration zwischen Ihren EJB-Komponenten und externen Datenquellen wie Datenbanken. Als Entwickler müssen Sie das Speichern und Abrufen von Daten aus einer Datenbank nicht verwalten. Sie können dies jedoch auch tun, wenn dies Ihren Anforderungen entspricht.

Der EJB-Container stellt diese und andere Funktionen gemäß den von Ihnen definierten Regeln bereit. Dies wird als deklarative Programmierung bezeichnet. Die deklarative Programmierung ist ein Mechanismus, mit dem Sie die gewünschten Dienste in einem XML-formatierten Dokument deklarieren können.Dieses XML-Dokument wird als Implementierungsdeskriptor bezeichnet, , der mit Ihrer EJB-Anwendung bereitgestellt wird. Der Server liest den Implementierungsdeskriptor und implementiert die von Ihnen angeforderten Services automatisch gemäß den von Ihnen deklarierten Regeln. Daher ist die Komplexität der Implementierung dieser Dienste vollständig verborgen, während Sie die Möglichkeit behalten, die EJB-Anwendung an Ihre Anforderungen anzupassen.

Während die EJB-Spezifikation viele der Optionen definiert, die Sie im Deployment-Deskriptor ändern können, verbietet dies EJB-Containeranbietern nicht, eigene benutzerdefinierte Deployment-Deskriptoren zu erstellen, um vorhandene Konfigurationsoptionen zu erweitern oder neue Optionen hinzuzufügen. Alle Containeranbieter stellen Erweiterungen für den Implementierungsdeskriptor bereit. Sie verwenden diese Erweiterungen, um den generischen EJB-Implementierungsdeskriptor mit container-spezifischen Services zu verbinden. Während diese Erweiterungen oft wesentlich sind, sind sie nicht Standard und nicht tragbar. EJB-Komponentenentwickler sind nicht für die Arbeit mit container-spezifischen Erweiterungen des Implementierungsdeskriptors verantwortlich. Der Service ist im Allgemeinen für jemanden reserviert, der über spezielle Kenntnisse in der Verwaltung des EJB-Containers verfügt.