Richtlinie: Design von Entity-Beans
Diese Richtlinie erläutert das Design von Entity-Beans für eine J2EE-Anwendung.
Beziehungen
Zugehörige Elemente
Hauptbeschreibung

Einführung

Diese Richtlinie konzentriert sich auf das Design von Entity-Beans. Weitere Anleitungen zu Entity-Beans, z. B. dazu, wie Sie Entity-Beans festlegen und modellieren können, finden Sie unter Richtlinie: Entity-Beans. Allgemeine Anleitungen zu EJBs finden Sie unter Richtlinie: Enterprise JavaBeans (EJBs).

Persistente Attribute und Primärschlüssel

Legen Sie die persistenten Attribute und den Primärschlüssel der Entity-Bean fest.

Vergleich zwischen der über JavaBeans realisierten Transaktionspersistenz und der über Container realisierten Transaktionspersistenz

Eine Beschreibung dieser beiden Persistenzkonzepte finden Sie unter Konzept: Überblick über J2EE.

Im allgemeinen erfordert die über Container realisierte Transaktionspersistenz (CMP, Container-Managed Persistence) weniger Code und einen einfacheren Code als die über JavaBeans realisierte Transaktionspersistenz (Bean-Managed Persistence, BMP). Wenn die Leistung jedoch von kritischer Bedeutung ist oder wenn eine bessere Steuerung der Zuordnung zwischen Logik und Datenbank erforderlich ist, dann kann es erforderlich sein, die über JavaBeans realisierte Transaktionspersistenz zu verwenden.

Verfügt Ihr EJB-Container nicht über die erforderliche Unterstützungsstufe, dann könnten Sie ein objektbezogenes Zuordnungstool eines Drittherstellers entweder mit der über JavaBeans realisierten Transaktionspersistenz verwenden oder, falls das Tool im Container integriert ist, mit der über Container realisierten Transaktionspersistenz.

Wenn Sie die über Container realisierte Transaktionspersistenz verwenden und ein Datenmodell existiert, können Sie die CMP-Entity-EJBs den Datenbanktabellen im Datenmodell zuordnen. Die Zuordnung ist letztlich im Implementierungsdeskriptor der EJB-Module ersichtlich. Nähere Informationen hierzu finden Sie unter Richtlinie: J2EE-Module assemblieren.

Wenn Sie die über JavaBeans realisierte Transaktionspersistenz verwenden möchten, binden Sie alle Datenbankzugriffe in eine DAO-Klasse ein (Data Access Object). Dies ist lediglich eine Java-Klasse, die das zugrunde liegenden Speicherverfahren verbirgt und kapselt und die Änderungen isoliert, wenn sich die Schnittstelle zur Datenquelle ändert. Selbst wenn die Datenquelle voraussichtlich immer RDBMS sein wird, können in SQL-Syntax und -Format geringfügige Abweichungen vorkommen, so dass sich ihre Isolierung in einer DAO-Klasse als vorteilhaft erweist. Siehe hierzu Core J2EE Patterns - Data Access Object Pattern ([ALU01]).