Este patrón se utiliza para grabar datos en una base de datos utilizando una conexión JDBC.
Propiedad | Valor | LocalJDBCWriter | JDBCWriter |
---|---|---|---|
PATTERN_IMPL_CLASS | Clase que implementa la interfaz JDBCWriterPattern | Aplicable |
Aplicable |
ds_jndi_name | Nombre JNDI del origen de datos. | Aplicable |
No se aplica |
jdbc_url | El URL JDBC. Por ejemplo, jdbc:derby:C:\\mysample\\CREDITREPORT. | Aplicable |
No se aplica |
jdbc_driver | El controlador JDBC. Por ejemplo, org.apache.derby.jdbc.EmbeddedDriver | Aplicable |
No se aplica |
user_id | El ID de usuario para la base de datos. Por ejemplo, Myid | Aplicable |
No se aplica |
pswd | La contraseña de usuario. Por ejemplo, mypwd. Sólo LocalJDBCReader. | Aplicable |
No se aplica |
Nombre de propiedad | Valor | Descripción | LocalJDBCReader | JDBCWriter |
---|---|---|---|---|
debug |
true o false (el valor predeterminado es false) |
Habilita el rastreo detallado en esta secuencia de datos por lotes. |
Aplicable |
Aplicable |
EnablePerformanceMeasurement |
true o false (el valor predeterminado es false) |
Calcula el tiempo total invertido en las secuencias de datos por lotes y el método processRecord, si utiliza GenericXDBatchStep. |
Aplicable |
Aplicable |
EnableDetailedPerformanceMeasurement |
true o false (el valor predeterminado es false) |
Proporciona un desglose más detallado del tiempo invertido en cada método de las secuencias de datos por lotes. |
Aplicable |
Aplicable |
batch_interval |
El valor predeterminado es 20. Este valor debe ser menor que el intervalo de puntos de control para la sincronización por puntos de control basada en registros. |
Indica el número de actualizaciones SQL que se deben procesar por lotes antes de comprometerse. |
Aplicable |
Aplicable |
public interface JDBCWriterPattern { public void initialize(Properties props); /** * Esta es normalmente una consulta de actualización utilizada para grabar datos en la BD * @return */ public String getSQLQuery(); /** * La clase padre BDSJDBCWriter crea una nueva preparedstatement y la * pasa a este método. Este método llena la preparedstatement con los * valores adecuados y la devuelve a la clase padre para su ejecución * @param pstmt * @param record * @return */ public PreparedStatement writeRecord(PreparedStatement pstmt, Object record); }
<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="ds_jndi_name" value="jdbc/fvtdb"/> <prop name="debug" value="true"/> </props> <impl-class>com.ibm.websphere.batch.devframework.datastreams.patterns.JDBCWriter</impl-class> </bds> </batch-data-streams>
<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="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.LocalJDBCWriter</impl-class> </bds> </batch-data-streams>