PureQueryWriterPattern
Utilice este patrón para grabar datos en una base de datos utilizando IBM® Optim pureQuery Runtime. La infraestructura BDS (secuencia de datos por lotes) completa las tareas administrativas de apertura y cierre de conexiones.
Clases de soporte
La clase PureQueryWriter implementa las operaciones básicas de apertura y cierre de conexiones de base de datos, obteniendo la interfaz de datos de PureQuery y las operaciones de proceso por lotes.
Propiedades obligatorias
Las propiedades siguientes son necesarias para el patrón.
Nombre de propiedad | Value |
---|---|
PATTERN_IMPL_CLASS | Clase que implemente la interfaz de PureQueryWriterPattern |
PQ_DATA_BEAN_INTERFACE | Interfaz de bean de datos PureQuery |
ds_jndi_name | Nombre JNDI (Java™ Naming and Directory Interface) del origen de datos para acceder a la base de datos |
Propiedades opcionales
Para el patrón las propiedades siguientes son opcionales.
Nombre de propiedad | Value | Descripción |
---|---|---|
debug | true o false (El valor predeterminado es false.) | Habilita el rastreo detallado en esta secuencia de datos por lotes. |
DB_SCHEMA | null | Nombre de esquema de la base de datos |
EnablePerformanceMeasurement | true o false (El valor predeterminado es false.) | Calcula el tiempo total invertido en las secuencias de datos por lotes y en el método processRecord, si se utiliza GenericXDBatchStep |
force_connection_recycle | false | Obliga a la conexión a cerrarse y volverse a abrir durante el proceso de punto de comprobación |
Batch_interval | 20 | Número de operaciones por lotes |
Definición de interfaz
La definición de la interfaz PureQueryWriterPattern muestra los métodos que debe implementar para dar soporte a la interfaz PureQueryWriterPattern.
public interface PureQueryWriterPattern {
public void initialize(Properties props);
/**
* The parent class passes the record to be written, the data interface, or the data interface
* user method in order to update the database. The application might use the data interface to
* run the pureQuery API method for in-line style or the data interface method for annotation style.
* The parent class passes the record to be written and the
* Data interface that may be used by the application to execute the pureQuery API method
* (for in-line style ) or the Data interface user method ( for annotation style ) in order
* to update the database.
* @param
* @parámetro record
* @return
*/
public void writeRecord(Data dataInterface, Object record);
}
Ejemplo xJCL
El ejemplo muestra el xJCL que puede utilizar para definir una secuencia de datos por lotes que implementa la interfaz PureQueryWriterPattern en la aplicación.
<batch-data-streams>
<bds>
<logical-name>outputStream</logical-name>
<props>
<prop name="PATTERN-IMPL-CLASS" value="com.ibm.MyWriterPattern"/>
<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="myid"/>
<prop name="pswd" value="mypwd"/>
<prop name="debug" value="true"/>
<prop name="DB_SCHEMA" value="PQDS"/>
<prop name="PQ_DATA_BEAN_INTERFACE" value="com.ibm..MyEmployeeData"/>
</props>
<impl-class>com.ibm.websphere.batch.devframework.datastreams.patterns.PureQueryWriter</impl-class>
</bds>
</batch-data-streams>