Erweitern des Verständnisses von Managed Beans in Java EE 6
Die Java EE 6-Spezifikation umfasst eine breite Palette von Anmerkungen für den Umgang mit Managed Beans, einschließlich:
- @javax.annotation.ManagedBean
- @javax.inject.Named
- @javax.faces.ManagedBean
Navigation im Spektrum der verwalteten Produkte Beans
-
JSF Managed Beans: Diese Beans werden von der JavaServer Faces (JSF)-Spezifikation angeboten und unterstützen die Bean-Erstellung und Abhängigkeitsinjektion für JSF-Seiten. Sie bieten im Vergleich zu CDI-Beans eingeschränkte Funktionen und sollten zugunsten letzterer abgeschafft werden.
-
CDI-Beans: Diese mit CDI eingeführten Beans bieten erweiterte Funktionen wie Interceptoren, Ereignisbehandlung, und Abhängigkeitsinjektion mit Qualifizierern. Sie stellen den primären Managed-Bean-Mechanismus in Java EE 6 und höher dar.
-
EJB: Enterprise JavaBeans (EJBs) sind ein grundlegendes Konzept in Java EE und bieten transaktionale, verteilte und zustandsbehaftete/zustandslose Bereitstellung Dienstleistungen. Sie bieten Funktionen, die für CDI-Beans nicht verfügbar sind, wie Passivierung und Timer.
Best Practices für die Injektion
Die Injektion verwalteter Beans kann durch die folgenden Anmerkungen erreicht werden:
-
@Inject: Zur Injektion in CDI-Bohnen und EJBs
-
@EJB: Speziell zum Einfügen von EJBs in andere verwaltete Beans
-
@ManagedProperty: Eine ältere Annotation wird in Java EE 6 noch unterstützt, aber Empfohlen wird die Verwendung von @Inject Stattdessen.
Auswahl des optimalen verwalteten Bean-Typs
Die Entscheidung, welcher verwaltete Bean-Typ verwendet werden soll, hängt von den spezifischen Anforderungen der Anwendung ab:
-
CDI Beans: Die Standardauswahl für verwaltete Allzweck-Beans, die eine breite Palette an Funktionen und Funktionen bieten Flexibilität.
-
EJBs: Unverzichtbar für Funktionen wie Transaktionsmanagement, Passivierung und Timer.
Das obige ist der detaillierte Inhalt vonWelchen verwalteten Bean-Typ sollten Sie in Java EE 6 wählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn