EJB-Enterprise-Beans (EJB = Enterprise JavaBeans) und EJB-Elemente werden in den Sichten von UML-Klassendiagrammen (UML = Unified Modeling Language) auf der Basis der Angaben für die Zuordnung zwischen der EJB-Architektur und UML dargestellt.
Die Spezifikation wird in der UML/EJB Mapping Specification Request JSR -000026 (JSR-26) definiert. JSR-26 definiert diese Standardzuordnungsspezifikation für die UML-Darstellung von Komponenten, die auf Java und EJB basieren. JSR-26 wird über das Java Community Process Program veröffentlicht und aktualisiert und bietet Entwicklern einen zentralen Verknüpfungspunkt zwischen diesen beiden Technologien.
In UML-Klassendiagrammen wird die UML-Notation verwendet, um Enterprise-Beans, die darin enthaltenen Felder und Methoden sowie die Beziehungen zwischen Enterprise-Beans gemäß JSR-26 darzustellen.
UML-Klassendiagramme können auch Java-Klassen und -Schnittstellen darstellen. Standardmäßig werden Feldern bestimmte Attribute und Methoden bestimmte Operationen zugeordnet. Abhängig von der Art der Beziehung kann es sinnvoll sein, Java-Felder als Assoziation zu einer Java-Klasse darzustellen.
Ein Stereotyp ist ein Erweiterungsmechanismus, der das UML-Vokabular erweitert und einer Java-Klasse, einer Java-Schnittstelle und einer Enterprise-Bean eine detailliertere Bedeutung verleiht.
Die folgende Tabelle zeigt, wie mit Hilfe von Symbolen in UML-Klassendiagrammen Zuordnungen zwischen Enterprise-Beans sowie EJB-Elementen und UML-Elementen und -Stereotypen hergestellt werden können.
EJB-Element | UML-Element | Stereotyp | Symbol |
---|---|---|---|
EJB-JAR-Datei | Artefakt | <<EJB-Jar>> | ![]() |
Entity-Beans von CMP 1.x (CMP = Container-Managed Persistence) | Komponente | <<Entity-Bean>> | ![]() |
Entity-Beans von CMP 2.x | Komponente | <<Entity-Bean>> | ![]() |
Entity-Bean von BMP (Bean-Managed Persistence) | Komponente | <<Entity-Bean>> | ![]() |
Nachrichtengesteuerte Bean | Komponente | <<Nachrichtengesteuerte Bean>> | ![]() |
Session-Bean | Komponente | <<Session-Bean>> | ![]() |
Session-Bean-Facade | Komponente | <<Session-Bean>> | ![]() |
Beanklasse | Klasse | <<Beanklasse>> | ![]() |
Ferne Schnittstelle | Klasse | <<Ferne Schnittstelle>> | ![]() |
Lokale Schnittstelle | Klasse | <<Lokale Schnittstelle>> | ![]() |
Home-Schnittstelle | Klasse | <<Home-Schnittstelle>> | ![]() |
Lokale Home-Schnittstelle | Klasse | <<Lokale Home-Schnittstelle>> | ![]() |
Methodenberechtigung | Klasse | <<Methodenberechtigung>> | ![]() |
Ausschlussliste | Klasse | <<Ausschlussliste>> | ![]() |
Primärschlüsselklasse | Klasse | <<EJB-Primärschlüsselklasse>> | ![]() |
Primärschlüsselfeld | Attribut | <<EJB-Primärschlüsselfeld>> | ![]() |
CMP-Feld | Attribut | <<CMP-Feld>> | ![]() |
Lokale Methode | Operation | <<Lokal>> | ![]() |
Remote-Methode | Operation | <<Remote>> | ![]() |
Lokale Home-Methode | Operation | <<Lokales Home>> | ![]() |
Home-Methode | Operation | <<Home>> | ![]() |
Methodenelement | Operation | <<Methodenelement>> | ![]() |
Name des Sicherheitsaufgabenbereichs | Actor | <<Aufgabenbereichsname>> | ![]() |
Referenz für Name des Sicherheitsaufgabenbereichs | Actor | <<Referenz des Aufgabenbereichsnamens>> | ![]() |
WAS-Erweiterung (WAS = WebSphere Application Server) für EJB-Vererbungsbeziehung | Vererbung | <<WAS-Vererbung | Nein |
CMP-Beziehung | Assoziation | <<Beziehung>> | Nein |
Beziehung zwischen einer Enterprise-Bean und den zugehörigen Home-Schnittstellen und fernen Schnittstellen (lokale Home, lokale) | Implementierung | <<EJB-Implementierung>> | Nein |
Beziehung zwischen einer EJB-JAR-Datei und den darin enthaltenen Entity-Beans | Manifestation | <<Manifestation>> | Nein |
Beziehung zwischen einer Enterprise-Bean und den zugehörigen Beanklassen | Realisierung | <<EJB-Realisierung>> | Nein |
Ferne Referenz zwischen Enterprise-Beans | Verwendung | <<Referenz>> | Nein |
Lokale Referenz zwischen Enterprise-Beans | Verwendung | <<Lokale Referenz>> | Nein |
Fassadenbeziehung zwischen CMP und Session-Facade-Beans | Verwendung | <<Fassade>> | Nein |
Zuordnung zwischen Enterprise-Beans und Datenbankobjekten | Verwendung | <<Zuordnung>> | Nein |
Sicherheitsaufgabenbereichsbeziehung | Verwendung | <<Sicherheitsaufgabenbereich>> | Nein |
Beziehung für Sicherheitsaufgabenbereichsreferenz | Verwendung | <<Referenz des Sicherheitsaufgabenbereichs>> | Nein |