Ejemplo de entrada XML para realizar transformaciones JET de sentencias SQL y convertirlas en beans

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.

Comentarios