Für die Bearbeitung des restlichen Lernprogramms müssen Sie ein einfaches Java-Programm
und zwei XML-Dateien erstellen und packen. Diese Gruppe von Dateien definiert
eine einfache ObjectGrid-Konfiguration mit einer einzigen ObjectGrid-Instanz mit dem Namen
accounting und einer Map customer.
Die Datei SimpleDP.xml enthält eine Implementierungsrichtlinie
für ein einziges MapSet, das mit einer einzigen Partition und einer erforderlichen Mindestanzahl von null Replikaten
konfiguriert ist.
Vorgehensweise
- Wechseln Sie in einem Befehlszeilenfenster in das Verzeichnis
WXS-Ausgangsverzeichnis.
- Erstellen Sie ein Verzeichnis mit dem Namen applib.
- Erstellen und kompilieren Sie die folgende Klasse SimpleApp.java:
SimpleApp.java
// Dieses Beispielprogramm wird ohne Wartung (auf "as-is"-Basis)
// bereitgestellt und kann vom Kunden (a) zu Schulungs- und Studienzwecken,
// (b) zum Entwickeln von Anwendungen für ein IBM WebSphere-Produkt zur
// internen Nutzung beim Kunden oder Weitergabe im Rahmen einer solchen
// Anwendung in kundeneigenen Produkten gebührenfrei genutzt, ausgeführt,
// kopiert und geändert werden.
// Lizenziertes Material - Eigentum von IBM
// 5724-J34 (C) COPYRIGHT International Business Machines Corp. 2007-2009
package com.ibm.websphere.objectgrid.security.sample.guide;
import com.ibm.websphere.objectgrid.ClientClusterContext;
import com.ibm.websphere.objectgrid.ObjectGrid;
import com.ibm.websphere.objectgrid.ObjectGridManager;
import com.ibm.websphere.objectgrid.ObjectGridManagerFactory;
import com.ibm.websphere.objectgrid.ObjectMap;
import com.ibm.websphere.objectgrid.Session;
public class SimpleApp {
public static void main(String[] args) throws Exception {
SimpleApp app = new SimpleApp();
app.run(args);
}
/**
* read and write the map
* @throws Exception
*/
protected void run(String[] args) throws Exception {
ObjectGrid og = getObjectGrid(args);
Session session = og.getSession();
ObjectMap customerMap = session.getMap("customer");
String customer = (String) customerMap.get("0001");
if (customer == null) {
customerMap.insert("0001", "fName lName");
} else {
customerMap.update("0001", "fName lName");
}
customer = (String) customerMap.get("0001");
// Close the session (optional in Version 7.1.1 and later) for improved performance
session.close();
System.out.println("The customer name for ID 0001 is " + customer);
}
/**
* Get the ObjectGrid
* @return Eine ObjectGrid-Instanz.
* @throws Exception
*/
protected ObjectGrid getObjectGrid(String[] args) throws Exception {
ObjectGridManager ogManager = ObjectGridManagerFactory.getObjectGridManager();
// Create an ObjectGrid
ClientClusterContext ccContext = ogManager.connect("localhost:2809", null, null);
ObjectGrid og = ogManager.getObjectGrid(ccContext, "accounting");
return og;
}
}
- Kompilieren Sie das Paket mit dieser Datei, und nennen Sie die JAR-Datei
sec_sample.jar.
- Wechseln Sie in das Verzeichnis WXS-Ausgangsverzeichnis, und erstellen
Sie ein Verzeichnis mit dem Namen xml.
- Erstellen Sie im Verzeichnis WXS-Ausgangsverzeichnis/xml
die folgenden Konfigurationsdateien:
SimpleApp.xml
<?xml version="1.0" encoding="UTF-8"?>
<objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
xmlns="http://ibm.com/ws/objectgrid/config">
<objectGrids>
<objectGrid name="accounting">
<backingMap name="customer" readOnly="false" copyKey="true"/>
</objectGrid>
</objectGrids>
</objectGridConfig>
Die folgende XML-Datei konfiguriert
die Implementierungsumgebung.
SimpleDP.xml
<?xml version="1.0" encoding="UTF-8"?>
<deploymentPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ibm.com/ws/objectgrid/deploymentPolicy ../deploymentPolicy.xsd"
xmlns="http://ibm.com/ws/objectgrid/deploymentPolicy">
<objectgridDeployment objectgridName="accounting">
<mapSet name="mapSet1" numberOfPartitions="1" minSyncReplicas="0" maxSyncReplicas="2" maxAsyncReplicas="1">
<map ref="customer"/>
</mapSet>
</objectgridDeployment>
</deploymentPolicy>
Ergebnisse
Diese Dateien erstellen eine
einfache ObjectGrid-Konfiguration mit einem einzigen
ObjectGrid, einer accounting-Instanz, und einer Map customer.