Enterprise JavaBeans Data Mediator Service

Der Enterprise JavaBeans (EJB) Data Mediator Service (DMS) ist die SDO-Java™-Schnittstelle, die für Anforderungen, die in Form von EJB-Abfragen übergeben werden, Daten in Form eines Datengraphen zurückgibt, der Datenobjekte verschiedenen Typs zurückgibt.

Der Data Mediator Service unterscheidet sich von einer herkömmlichen EJB-Finder- oder ejbSelect-Methode, die zwar ebenfalls EJB-Abfragen akzeptiert, aber eine Gruppe von EJB-Objekten desselben Typs oder eine Gruppe von CMP-Werten zurückgibt.

Mit EJB DMS können Sie eine EJB-Abfrage angeben, die einen Datengraphen (den DataGraph) von Datenobjekten (DataObjects) zurückgibt. Die Abfrage kann als zusammengesetzte EJB-Abfrage in einem String-Array von EJB-Abfrageanweisungen ausgedrückt werden. Ein Vorteil eines DataGraph ist der, dass ein großer Teil des Codes, der in einer EJB-Fassaden-Session-Bean geschrieben und für das Erstellen, Füllen und Aktualisieren von Unterstützungsobjekten für Kopiervorgänge zuständig ist, durch einen DataGraph und einen DMS ersetzt werden kann.
Wichtig: Der EJB DMS (Data Mediator Service) unterstützt nur CMP-Entity-Beans für EJB-2.x-Container. EJB-3.x-Module werden nicht unterstützt.

Sie können einen DataGraph mit dem Aufruf "getGraph" von im Container zwischengespeicherten EJB-Instanzen abrufen oder die Abfrageanforderung in SQL kompilieren und direkt für die Datenquelle ausführen.

Aktualisierte Datenobjekte können mit der Methode "applyChanges" auf eine von zwei Arten in den Datenspeicher zurückgeschrieben werden. Die Aktualisierungen können in SQL übersetzt und direkt auf den Datenspeicher angewendet oder mit EJB-Zugriffsmethoden zurückgeschrieben werden. Wenn Sie die Aktualisierungen direkt in den Datenspeicher zurückschreiben, erzielen Sie eine bessere Leistung, weil das Aktivieren von EJBs umgangen wird. Falls die Anwendung jedoch eine Geschäftslogik oder eine EJB-Containerfunktion erfordert, ist das Zurückschreibungen unter Verwendung von EJBs zu bevorzugen. Beim Zurückschreiben von Aktualisierungen mit EJBs können Sie für eine angepasste Behandlung geänderter "DataObjects" eine eigene "MediatorAdapter-Methode" angeben. Diese Anpassung kann die Verwendung einer anwendungsspezifischen optimistischen Steuerung des gemeinsamen Zugriffs, der Aufruf von Geschäftsmethoden in der EJB für die Durchführung der Aktualisierungen, die Aktualisierung berechneter Werte im "DataObject" oder der Aufruf anwendungsspezifischer "create"-Methoden in "EJBHome" sein.

Für den Aktualisierungsprozess ist nicht entscheidend, wie der DataGraph ursprünglich abgerufen wurde. Es ist also möglich, einen DataGraph direkt aus einer Datenquelle abzurufen, aber die verzögerten Aktualisierungen über die Enterprise-Bean anzuwenden und umgekehrt.

Unabhängig davon, welchen Aktualisierungsansatz Sie verwenden, es wird immer ein Algorithmus für eine optimistische Steuerung des gemeinsamen Zugriffs verwendet. Während der Aktualisierung werden Felder gelesen, die als Konsistenzfelder definiert sind, um sicherzustellen, dass der aktuelle Wert dem alten Wert im Feld des DataObject entspricht.

Laufzeitverarbeitung

Eine EJB-Mediator-Anforderung ist eine zusammengesetzte EJB-Abfrage, die sich aus einer geordneten Liste mit regulären EJB-Abfragen zusammensetzt. Jede Abfrage in der zusammengesetzten Abfrage definiert ein SDO. Die SELECT-Klausel der Abfrage gibt die CMP-Felder oder Ausdrücke an, die im DataObject zurückgegeben werden sollen. Die WHERE-Klausel gibt die Filterbedingungen an. Die erste Abfrage in der Liste wird als Stammknoten des DataGraph bezeichnet. Die FROM-Klausel einer Abfrage, abgesehen von der ersten, legt eine EJB-Beziehung fest, die zum Erstellen von Referenzen zwischen DataObjects verwendet wird. Der Artikel "DataGraph-Schema" beschreibt, wie das Schema des DataGraph aus der Abfrage abgeleitet wird.


Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cejb_ejbmed
Dateiname:cejb_ejbmed.html