Ese XML es un ejemplo de entrada a la transformación JET con la plantilla GenSQLBean.jet.
<?xml version="1.0" encoding="UTF-8"?>
<genCodeData>
<selection genAlwaysJUnit="false" genIncludeConn="false"
genInlineSample="true" genInterface="true" genInterfaceTest="true"
genSampleUtil="false" genType="genFromSQL" />
<connection name="SAMPLE1" />
<sqlStatements>
<interface
importAnnotations="import com.ibm.pdq.annotation.Select;import java.util.Iterator;"
importTypes="" interfaceMerge="false" interfaceName="MyActSQLData"
package="myPackage" srcContainer="MyProject/src" />
<testCode importTypes="import java.util.Iterator;"
inlineSampleName="MyActSQLInlineSample"
interfaceTestName="MyActSQLDataTest" package="myPackage"
srcContainer="MyProject/src" />
<results>
<resultSet>
<bean genBean="true" genPublicFields="false"
importAnnotations="import com.ibm.pdq.annotation.Id;"
importTypes="" name="MyActSQL" package="myPackage"
srcContainer="MyProject/src" superClass="java.lang.Object" />
<fieldInfos>
<field>
<column colLength="" colType="CHAR"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="ACTDESC"
tableName="ACT" />
<parameter accessor="getActdesc()"
javaType="String" name="actdesc" propertyName="actdesc" />
</field>
<field>
<column colLength="" colType="CHAR"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="ACTKWD"
tableName="ACT" />
<parameter accessor="getActkwd()"
javaType="String" name="actkwd" propertyName="actkwd" />
</field>
<field>
<column colLength="" colType="CHAR"
isAlwaysGenCol="false" isIdentityCol="false" isKey="true"
isUniqueColName="true" isUserDefinedType="false" name="ACTNO"
tableName="ACT" />
<parameter accessor="getActno()"
javaType="String" name="actno" propertyName="actno" />
</field>
</fieldInfos>
<sql handlerClass="" methodName="getMyActSQL"
sqlStmt="SELECT ACTDESC, ACTKWD, ACTNO FROM ACT WHERE ACTNO = ?"
stmtType="SELECT">
<parameter javaType="String" name="param1" />
</sql>
</resultSet>
</results>
</sqlStatements>
</genCodeData>
- bean
- Los atributos de esta etiqueta describen el bean generado para un único conjunto de resultados.
- genBean
- Especifica si hay que crear un nuevo bean o si la etiqueta bean describe un bean ya existente.
- verdadero
- Crear un bean nuevo.
- falso
- La etiqueta bean describe un bean ya existente.
- genPublicFields
- Especifica el nivel de acceso de las propiedades del bean.
- El valor true genera las propiedades del bean como públicas.
- El valor false genera las propiedades del bean como protegidas y permite el acceso a ellas mediante métodos get y set.
- importAnnotations
- Especifica si se van a importar las anotaciones de pureQuery. Los valores aceptables son los siguientes:
- mport com.ibm.pdq.annotation.Column;
- import com.ibm.pdq.annotation.Table;
- El bean debe importar la anotación de la tabla si el nombre del bean no coincide con el nombre correspondiente del objeto de
base de datos.
- El bean también debe importar la anotación Columna si uno o varios nombres de las propiedades de los beans no coinciden
con sus correspondientes columnas o parámetros en el objeto de base de datos.
- El bean puede importar la anotación ID si desea utilizar esta anotación para mostrar las columnas que
forman parte de una clave primaria.
- importTypes
- Especifica qué tipos de Java™ importar. Debe importar todos los tipos que no forman
parte del paquete java.lang.*
- name
- Especifica el nombre del bean.
- package
- Especifica el nombre del paquete Java en el que se colocará el código generado.
- srcContainer
- Especifica la carpeta del proyecto en el que se colocará el código generado.
- superClass
- Especifica la superclase del bean.
- column
- Los atributos de esta etiqueta describen una columna en el objeto de base de datos.
- colLength
- Especifica la longitud de la columna.
- colType
- Especifica el tipo de datos para los valores de la columna.
- isAlwaysGenCol
- Especifica si los valores de la columna se generan siempre.
Los valores aceptables son true y false.
- isIdentityCol
- Especifica si la columna es una columna de identidad. Los valores aceptables son true y
false.
- isKey
- Especifica si la columna es una columna de clave. Los valores aceptables son true y
false.
- isUniqueColName
- Especifica si el nombre de la columna es exclusivo. Los valores aceptables son true y
false.
- isUserDefinedType
- Especifica si el tipo de columna está definido por el usuario. Los valores aceptables son true y
false.
- name
- Especifica el nombre de la columna.
- tableName
- Especifica el nombre de la tabla a la que pertenece la columna.
- connection
- El atributo de esta etiqueta especifica el nombre de la conexión de base de datos que se utilizará.
- name
- Especifica el nombre de la conexión de base de datos que se utilizará.
- field
- Las etiquetas dentro de esta etiqueta describen la forma en que una columna determinada de la base de datos
se correlaciona con una propiedad determinada del bean.
- fieldinfos
- Las etiquetas dentro de esta etiqueta describen la forma en que las columnas de la base de datos se correlacionan con
las propiedades del bean.
- interface
- importAnnotations
- Especifica las anotaciones de pureQuery que se importarán a la interfaz generada. Los valores aceptables son los siguientes:
- import com.ibm.pdq.annotation.Call;
- import com.ibm.pdq.annotation.Select;
- import com.ibm.pdq.annotation.Update;
- import com.ibm.pdq.annotation.Handler;
- importTypes
- Especifica qué tipos de Java importar. Debe importar todos los tipos que no forman
parte del paquete java.lang.*
- interfaceMerge
- Si el nombre de la interfaz que se generará coincide con el nombre de una clase Java
que ya exista en el proyecto Java de destino, indica que hay que fusionar el contenido
de la clase existente con la nueva interfaz generada.
- interfaceName
- Especifica el nombre de la interfaz que debe generarse para el estilo de programación de método anotado.
- package
- Especifica el nombre del paquete Java en el que se colocará el código generado.
- srcContainer
- Especifica la carpeta del proyecto en el que se colocará el código generado.
- parameter
- Los atributos de esta etiqueta describen una propiedad determinada del bean
o un parámetro para pasar valores a una sentencia SQL.
- javaType
- Especifica el tipo de datos Java para la propiedad del bean o el valor pasado a una
sentencia SQL.
- name
- Especifica el nombre de la propiedad o del parámetro.
- resultSet
- Los códigos que contiene esta etiqueta describen el contenido del bean generado.
- sql
- El atributo de esta etiqueta describe el asistente que inicia la generación del código.
- handlerClass
- Si desea utilizar una clase propia de RowHandler para procesar los resultados del procedimiento
almacenado, especifique el nombre del paquete y de la clase. Para obtener información sobre las clases
RowHandler, consulte
La interfaz
RowHandler<ROW>
- methodName
- Especifica el nombre del método que se generará en la interfaz.
- sqlStmt
- Especifica el texto de la sentencia SQL.
- stmtType
- Especifica el tipo de la sentencia SQL. Los valores válidos son SELECT,
UPDATE, DELETE, INSERT y CALL.
- testCode
- importTypes
- Especifica qué tipos de Java importar. Debe importar todos los tipos que no forman
parte del paquete java.lang.*
- inlineSampleName
- Especifica el nombre que se asignará a la clase de prueba generada para el estilo de programación incorporado.
- interfaceTestName
- Especifica el nombre de la clase de prueba para el estilo de programación de método anotado.
- package
- Especifica el nombre del paquete Java en el que se colocará el código generado.
- srcContainer
- Especifica la carpeta del proyecto en el que se colocará el código generado.