Dieses Muster wird verwendet, um über eine JDBC-Verbindung (Java Database Connectivity) Daten aus einer Datenbank abzurufen.
Diese Klasse wird referenziert, wenn das Verwendungsmuster Ihres JDBC-Eingabedatenstroms eine einzelne Ergebnismenge aus einer Abfrage abruft, die nach jeder Iteration des Schritts verwendet und gelöscht wird.
Diese Klasse wird referenziert, wenn Daten aus einer lokalen Datenbank gelesen werden.
Eigenschaft | Wert | LocalJDBCReader | CursorHoldableJDBCReader | JDBCReader |
---|---|---|---|---|
PATTERN_IMPL_CLASS | Klasse, die die Schnittstelle JDBCReaderPattern implementiert | Zutreffend |
Zutreffend |
Zutreffend |
ds_jndi_name | JNDI-Name der Datenquelle. | Zutreffend |
Nicht zutreffend |
Zutreffend |
jdbc_url | Der JDBC-URL, z. B. jdbc:derby:C:\\mysample\\CREDITREPORT. | Zutreffend |
Nicht zutreffend |
Nicht zutreffend |
jdbc_driver | Der JDBC-Treiber, z. B. org.apache.derby.jdbc.EmbeddedDriver. | Zutreffend |
Nicht zutreffend |
Nicht zutreffend |
userid | Die Benutzer-ID für die Datenbank, z. B. Myid. | Zutreffend |
Nicht zutreffend |
Nicht zutreffend |
pswd | Benutzerkennwort, z. B. mypwd. Nur LocalJDBCReader. | Zutreffend |
Nicht zutreffend |
Nicht zutreffend |
Eigenschaftsname | Wert | Beschreibung | LocalJDBCReader | CursorHoldableJDCReader | JDBCReader |
---|---|---|---|---|---|
debug |
true oder false (der Standardwert ist false) |
Aktiviert detailliertes Tracing in diesem Stapeldatenstrom. |
Zutreffend |
Zutreffend |
Zutreffend |
EnablePerformanceMeasurement |
true oder false (der Standardwert ist false) |
Berechnet die Gesamtzeit in Stapeldatenströmen und in der Methode processRecord bei Verwendung des GenericXDBatchStep. |
Zutreffend |
Zutreffend |
Zutreffend |
EnableDetailedPerformanceMeasurement |
true oder false (der Standardwert ist false) |
Bietet eine detailliertere Aufgliederung der Zeit pro Methode des Stapeldatenstroms. |
Zutreffend |
Zutreffend |
Zutreffend |
public interface JDBCReaderPattern { /** * Diese Methode wird während der Konfiguration des Jobs aufgerufen. * * @param props - Eigenschaften, die über xJCL übergeben werden */ public void initialize(Properties props); /** * Diese Methode muss Werte für die verschiedenen Spalten der aktuellen Zeile aus dem entsprechenden resultset-Objekt abrufen. * Normalerweise werden diese Daten in ein temporäres, zurückzugebendes Objekt gestellt. * @param resultSet * @return */ public Object fetchRecord(ResultSet resultSet); /** * Diese Methode sollte eine SQL-Abfrage zurückgeben, die bei der Konfiguration * des Datenstroms zum Abrufen aller relevanten, im Rahmen der Jobabschnitte * zu verarbeitenden Daten verwendet werden. * @return - Objekt, das während des Verarbeitungsschritts verwendet werden soll. */ public String getInitialLookupQuery(); /** * Diese Methode wird beim Jobneustart aufgerufen. Das Neustart-Token (restartToken) * muss verwendet werden, um eine SQL-Abfrage zum Abrufen zuvor nicht verarbeiteter * Datensätze zu erstellen. * Normalerweise ist das restartToken der Primärschlüssel in der Tabelle, und * die Abfrage ruft alle Zeilen mit Primärschlüsselwert > restartToken ab. * @param - restartToken * @return - Abfrage bei Neustart */ public String getRestartQuery(String restartToken); /** * Diese Methode wird aufgerufen, bevor ein Prüfpunkt abgerufen wird. * @return - Die Methode muss einen Zeichenfolgewert zurückgeben, der * den letzten vom Datenstrom gelesenen Datensatz angibt. */ public String getRestartTokens(); }
<batch-data-streams> <bds> <logical-name>inputStream</logical-name> <props> <prop name="PATTERN_IMPL_CLASS" value="com.ibm.websphere.batch.samples.tests.bds.EchoReader"/> <prop name="ds_jndi_name" value="jdbc/fvtdb"/> <prop name="debug" value="true"/> <prop name="DEFAULT_APPLICATION_NAME" value="XDCGIVT"/> <!-- versions prior to 6103 only --> </props> <impl-class>com.ibm.websphere.batch.devframework.datastreams.patterns.CursorHoldableJDBCReader</impl-class> </bds> </batch-data-streams>
<batch-data-streams> <bds> <logical-name>inputStream</logical-name> <props> <prop name="PATTERN_IMPL_CLASS" value="com.ibm.websphere.batch.samples.tests.bds.EchoReader"/> <prop name="jdbc_url" value="jdbc:derby:C:\\mysample\\CREDITREPORT"/> <prop name="jdbc_driver" value="org.apache.derby.jdbc.EmbeddedDriver"/> <prop name="user_id" value="myuserid"/> <prop name="pswd" value="mypswd"/> <prop name="debug" value="true"/> </props> <impl-class>com.ibm.websphere.batch.devframework.datastreams.patterns.LocalJDBCReader</impl-class> </bds> </batch-data-streams>