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]).
|