< Zurück | Weiter >

Lerneinheit 2 des Lernprogramms "Einführung": Clientanwendung erstellen

Wenn Sie Daten in Ihrem Datengrid einfügen, löschen, aktualisieren und abrufen möchten, müssen Sie eine Clientanwendung schreiben. Das Einführungsbeispiel (gettingstarted) enthält eine Clientanwendung, die Sie verwenden können, um sich mit der Erstellung einer eigenen Clientanwendung vertraut zu machen.

Die Datei Client.java im Verzeichnis WXS-Installationsstammverzeichnis/ObjectGrid/gettingstarted/client/src/ ist das Clientprogramm, das veranschaulicht, wie die Verbindung zu einem Katalogserver hergestellt, die ObjectGrid-Instanz abgerufen und die API ObjectMap verwendet wird. Die API ObjectMap speichert Daten in Form von Schlüssel/Wert-Paaren und eignet sich ideal für das Caching von Objekten ohne Beziehungen. In den folgenden Schritten wird der Inhalt der Datei Client.java beschrieben.

Wenn Sie Objekte zwischenspeichern müssen, die Beziehungen haben, verwenden Sie die API EntityManager.

  1. Verbindung zum Katalogservice durch Anfordern einer ClientClusterContext-Instanz herstellen.

    Verwenden Sie zum Herstellen einer Verbindung zum Katalogserver die Methode "connect" der API "ObjectGridManager". Mit der Methode connect, die verwendet wird, muss nur der Katalogserverendpunkt im Format Hostname:Port angegeben werden. Sie können mehrere Katalogserverendpunkte angeben, indem Sie die Liste der Hostname:Port-Werte durch Kommas voneinander trennen. Das folgende Code-Snippet veranschaulicht, wie die Verbindung zu einem Katalogserver herstellt und eine ClientClusterContext-Instanz angefordert wird:

    ClientClusterContext ccc = ObjectGridManagerFactory.getObjectGridManager().connect("localhost:2809", null, null);
    Wenn die Verbindungen zu den Katalogservern erfolgreich hergestellt werden, gibt die Methode connect eine ClientClusterContext-Instanz zurück. Die ClientClusterContext-Instanz ist erforderlich, um das ObjectGrid von der API "ObjectGridManager" abzurufen.
  2. ObjectGrid-Instanz anfordern.

    Zum Anfordern einer ObjectGrid-Instanz verwenden Sie die Methode "getObjectGrid" der API "ObjectGridManager". Die Methode "getObjectGrid" erfordert die ClientClusterContext-Instanz und den Namen der Datengridinstanz. Die ClientClusterContext-Instanz wird während der Verbindung zum Katalogserver angefordert. Der Name der ObjectGrid-Instanz ist Grid und in der Datei objectgrid.xml angegeben. Das folgende Code-Snippet veranschaulicht, wie das Datengrid durch Aufruf der Methode "getObjectGrid" der API "ObjectGridManager" angefordert wird.

    ObjectGrid grid = ObjectGridManagerFactory.getObjectGridManager().getObjectGrid(ccc, “Grid”);
  3. Session-Instanz abrufen.

    Sie können eine Session-Instanz von der angeforderten ObjectGrid-Instanz abrufen. Eine Session-Instanz ist erforderlich, um die ObjectMap-Instanz abzurufen und die Transaktionsdemarkation durchzuführen. Das folgende Code-Snippet veranschaulicht, wie eine Session-Instanz durch Aufruf der Methode "getSession" der API "ObjectGrid" abgerufen wird.

    Session sess = grid.getSession();
  4. ObjectMap-Instanz abrufen.

    Nach dem Abrufen einer Session-Instanz können Sie durch Aufruf der Methode "getMap" der API "Session" eine ObjectMap-Instanz von der Session-Instanz abrufen. Sie müssen den Namen der Map als Parameter an die Methode getMap übergeben, um die ObjectMap-Instanz abzurufen. Das folgende Code-Snippet veranschaulicht, wie eine ObjectMap-Instanz durch Aufruf der Methode "getMap" der API "Session" angefordert wird.

    ObjectMap map1 = sess.getMap("Map1");
  5. ObjectMap-Methoden verwenden.

    Nach dem Anfordern einer ObjectMap-Instanz können Sie die API ObjectMap verwenden. Beachten Sie, dass die Schnittstelle "ObjectMap" eine transaktionsorientierte Map ist und eine Transaktionsdemarkation durch die Verwendung der Methoden "begin" und "commit" der API "Session" erfordert. Wenn keine explizite Transaktionsdemarkation in der Anwendung stattfindet, werden die ObjectMap-Operationen über Transaktionen mit automatischer Festschreibung ausgeführt.

    Das folgende Code-Snippet veranschaulicht, wie die API "ObjectMap" mit einer Transaktion mit automatischer Festschreibung verwendet wird.

    map1.insert(key1, value1);

    Das folgende Code-Snippet veranschaulicht, wie die API "ObjectMap" mit expliziter Transaktionsdemarkation verwendet wird.

    sess.begin();
    map1.insert(key1, value1);
    sess.commit();
  6. Optional: Schließen Sie die Sitzung. Nach Abschluss aller Session- und ObjectMap-Operationen schließen Sie die Sitzung mit der Methode Session.close(). Diese Methode gibt die Ressourcen zurück, die von der Sitzung verwendet wurden.
    sess.close();   
    Nachfolgende Aufrufe der Methode getSession() kehren schneller zurück, und es befinden sich weniger Session-Objekte im Heapspeicher.

Prüfpunkt der Lerneinheit

In dieser Lerneinheit haben Sie gelernt, wie eine einfache Clientanwendung für die Ausführung von Datengridoperationen erstellt wird.
< Zurück | Weiter >