RecordOrientedDataSetWriterPattern
Das Muster RecordOrientedDataSetWriterPattern wird verwendet, um Daten in eine z/OS-Datei zu schreiben.
Unterstützungsklassen
- ZFileStreamOrientedTextWriter: Schreibt Textdaten
- ZFileStreamOrientedByteWriter: Schreibt Bytedaten
- ZFileRecordOrientedDataWriter: Schreibt sequenzielle Daten
Erforderliche Eigenschaften
Die folgenden Eigenschaften sind für das Muster erforderlich.
Eigenschaftsname | Wert | Beschreibung |
---|---|---|
PATTERN_IMPL_CLASS | Name der Java™-Klasse | Klasse, die die Schnittstelle RecordOrientedDatasetWriterPattern implementiert |
DSNAME | Dateiname | Beispiel: USER216.BATCH.RECORD.OUTPUT |
Optionale Eigenschaften
Die folgenden Eigenschaften sind für das Muster optional.
Eigenschaftsname | Wert | Beschreibung |
---|---|---|
ds_parameters | Parameter zum Öffnen der Datei. | Der Standardwert für ZFileRecordOrientedDataWriter ist wb,recfm=fb,type=record,lrecl=80.
Der Standardwert für ZFileStreamOrientedByteWriter und ZFileStreamOrientedTextWriter ist wt. |
debug | true oder false (der Standardwert ist false) | Aktiviert detailliertes Tracing in diesem Stapeldatenstrom. |
EnablePerformanceMeasurement | true oder false (der Standardwert ist false) | Berechnet die Gesamtzeit in den Stapeldatenströmen und in der Methode "processRecord" bei Verwendung des GenericXDBatchStep. |
EnableDetailedPerformanceMeasurement | true oder false (der Standardwert ist false) | Bietet eine detailliertere Aufgliederung der Zeit pro Methode des Stapeldatenstroms. |
file.encoding | Codierung der Datei. | Beispiel: CP1047 |
Schnittstellendefinition
/**
*
* Dieses Muster wird verwendet, um mit jzos-APIS Daten in eine z/OS-Datei zu schreiben. */
public interface RecordOrientedDatasetWriterPattern {
/**
* Diese Methode wird während der Konfiguration des Jobs aufgerufen und
* ermöglicht dem Benutzer, die Initialisierung durchzuführen.
* Die Eigenschaften sind die in der xJCL angegebenen Eigenschaften.
* @param props
*/
public void initialize(Properties props);
/**
* Diese Methode muss das jeweilige Objekt in die Datei schreiben.
* @param out
* @param record
* @throws IOException
*/
public void writeRecord(ZFile out, Object record) throws IOException;
/**
* Diese Methode sollte verwendet werden, um Header-Informationen zu schreiben, falls vorhanden.
* @param out
* @throws IOException
*/
public void writeHeader(ZFile out) throws IOException;
/**
* Diese Methode kann während des Verarbeitungsschritts aufgerufen werden,
* um den Header explizit zu initialisieren und zu schreiben.
* @param header
*/
public void writeHeader(ZFile out, Object header);
}
xJCL-Beispiel
<batch-data-streams>
<bds>
<logical-name>outputStream</logical-name>
<props>
<prop name="PATTERN_IMPL_CLASS" value="com.ibm.websphere.batch.samples.tests.bds.EchoWriter"/>
<prop name="DSNAME" value="USER216.BATCH.RECORD.OUTPUT"/>
<prop name="ds_parameters" value="wt"/>
<prop name="file.encoding" value="CP1047"/>
<prop name="debug" value="${debug}"/>
</props>
<impl-class>com.ibm.websphere.batch.devframework.datastreams.patterns.ZFileStreamOrientedByteWriter</impl-class>
</bds>
</batch-data-streams>