Exemple d'entrée XML pour les transformations JET d'instructions SQL en beans

Ce code XML est un exemple d'entrée dans la transformation JET avec le modèle 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
Les attributs de cette balise décrivent le code généré pour un seul ensemble de résultats.
genBean
Indique si un bean doit être créé ou si la balise bean décrit un bean existant.
true
Un bean est créé.
false
La balise bean décrit un bean existant.
genPublicFields
Indique le niveau d'accès des propriétés du bean.
  • Une valeur true permet de générer des propriétés de bean publiques.
  • Une valeur false permet de générer des propriétés de bean protégées accessibles par le biais des méthodes get et set.
importAnnotations
Indique si les annotations pureQuery doivent être importées. Les valeurs admises sont les suivantes :
  • import com.ibm.pdq.annotation.Column;
  • import com.ibm.pdq.annotation.Table;
  • Le bean doit importer l'annotation Table si le nom du bean ne correspond pas au nom de l'objet de base de données correspondant.
  • Le bean doit également importer l'annotation Colonne si un ou plusieurs noms de propriétés dans les beans ne correspondent pas aux colonnes ou aux paramètres associés dans l'objet de base de données.
  • Le bean peut importer l'annotation Id si vous souhaitez utiliser cette annotation pour afficher les colonnes appartenant à une clé primaire.
importTypes
Indique quels types Java importer. Vous devez importer tous les types qui ne font pas partie du package java.lang.*.
name
Indique le nom du bean.
package
Indique le nom du package Java dans lequel le code généré sera placé.
srcContainer
Indique le dossier du projet dans lequel le code généré sera placé.
superClass
Indique la superclasse du bean.
column
Les attributs de cette balise décrivent une colonne dans l'objet de base de données.
colLength
Spécifie la longueur de la colonne.
colType
Spécifie le type de données pour les valeurs de la colonne.
isAlwaysGenCol
Indique si les valeurs affichées dans la colonne sont toujours générées. Les valeurs admises sont true et false.
isIdentityCol
Indique si la colonne est une colonne d'identité. Les valeurs admises sont true et false.
isKey
Indique si la colonne est une colonne de clé. Les valeurs admises sont true et false.
isUniqueColName
Indique si le nom de la colonne est unique. Les valeurs admises sont true et false.
isUserDefinedType
Indique si le type de la colonne est défini par l'utilisateur. Les valeurs admises sont true et false.
name
Spécifie le nom de la colonne.
tableName
Spécifie le nom de la table à laquelle la colonne appartient.
connection
L'attribut de cette balise indique le nom de la connexion de base de données à utiliser.
name
Indique le nom de la connexion de base de données à utiliser.
field
Les balises au sein de cette balise décrivent la façon dont une colonne spécifique de la base de données correspond à une propriété spécifique du bean.
fieldinfos
Les balises au sein de cette balise décrivent la façon dont les colonnes dans l'objet de base de données correspondent aux propriétés du bean.
interface
importAnnotations
Spécifie les annotations pureQuery à importer dans l'interface générée. Les valeurs admises sont les suivantes :
  • 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
Indique quels types Java importer. Vous devez importer tous les types qui ne font pas partie du package java.lang.*.
interfaceMerge
Si le nom spécifié pour l'interface à générer correspond au nom d'une classe Java qui existe déjà dans le projet Java cible, indique que le contenu de la classe existante doit être fusionné avec l'interface générée.
interfaceName
Indique le nom de l'interface à générer pour le style de programmation méthode annotée.
package
Indique le nom du package Java dans lequel le code généré sera placé.
srcContainer
Indique le dossier du projet dans lequel le code généré sera placé.
parameter
Les attributs de cette balise décrivent une propriété particulière du bean ou un paramètre pour la transmission de valeurs à une instruction SQL.
javaType
Spécifie le type de données Java pour la propriété du bean ou la valeur transmise à l'instruction SQL.
name
Spécifie le nom de la propriété ou du paramètre.
resultSet
Les balises que contient cette balise décrivent le contenu du bean généré.
sql
L'attribut de cette balise décrit l'assistant qui lance la génération de code.
handlerClass
Si vous voulez utiliser votre propre classe RowHandler pour le traitement des résultats de la procédure mémorisée, spécifiez le nom de la classe et le module. Pour des informations sur les classes RowHandler, voir L'interface RowHandler
methodName
Spécifie le nom de la méthode permettant de générer l'interface.
sqlStmt
Spécifie le texte de l'instruction SQL.
stmtType
Spécifie le type de l'instruction SQL. Les valeurs admises sont SELECT, UPDATE, DELETE, INSERT et CALL.
testCode
importTypes
Indique quels types Java importer. Vous devez importer tous les types qui ne font pas partie du package java.lang.*.
inlineSampleName
Spécifie le nom à attribuer à la classe de test générée pour le style de programmation intégrée.
interfaceTestName
Indique le nom de la classe de test à générer pour le style de programmation méthode annotée.
package
Indique le nom du package Java dans lequel le code généré sera placé.
srcContainer
Indique le dossier du projet dans lequel le code généré sera placé.

Commentaires