XML-Beispieleingabe für die pureQuery JET-Schablonen für Tabellen oder Sichten

Dieses XML-Dokument ist Beispieleingabe für JET-Umsetzungen mit den Schablonen GenTableBean.jet, GenTableInlineSample.jet, GenTableInterface.jet, GenTableInterfaceJUnit.jet und GenTableInterfaceTest.jet.

Die XML beschreibt die Tabelle STAFF in der Beispieldatenbank SAMPLE für DB2-Datenbanken für Linux, UNIX und Windows.

<?xml version="1.0" encoding="UTF-8"?>
<genCodeData>
	<selection genAlwaysJUnit="false" genIncludeConn="false"
		genInlineSample="true" genInterface="true" genInterfaceTest="true"
		genSampleUtil="true" genType="genFromTable" />
	<connection name="SAMPLE1" />
	<table includeSchemaInSQL="false" name="ACT" schema="MYSCHEMA">
		<resultSet>
			<bean genBean="true" genPublicFields="false"
				importAnnotations="import com.ibm.pdq.annotation.Id;" importTypes=""
				name="Act" package="myPackage" srcContainer="MyProject/src"
				superClass="java.lang.Object" />
			<fieldInfos>
				<field>
					<column colLength="(5)" 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="(5)" 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="(5)" 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>
		</resultSet>
		<interface importAnnotations="" importTypes=""
			interfaceMerge="false" interfaceName="ActData" package="myPackage"
			srcContainer="MyProject/src" />
		<testCode importTypes="" inlineSampleName="ActInlineSample"
			interfaceTestName="ActDataTest" package="myPackage"
			srcContainer="MyProject/src" />
		<sqlSelections createByObject="true" createByParameters="true"
			deleteByObject="true" deleteByParameters="true" selectAll="true"
			selectByObject="true" selectByParameters="true" updateByObject="true"
			updateByParameters="true" useAsteriskForAllColumns="false" />
	</table>
</genCodeData>
bean
Die Attribute dieses Tags beschreiben die generierte Bean.
genBean
Gibt an, ob eine neue Bean erstellt werden soll oder ob der Tag bean eine vorhandene Bean beschreibt.
true
Erstellt eine neue Bean.
false
Der Tag bean beschreibt eine vorhandene Bean.
genPublicFields
Gibt die Zugriffsebene der Eigenschaften der Bean an.
  • Bei Verwendung des Werts 'true' werden die Eigenschaften der Bean als öffentlich generiert.
  • Bei Verwendung des Werts 'false' werden die Eigenschaften der Bean als geschützt generiert. Der Zugriff auf sie wird über GET- und SET-Methoden ermöglicht.
importAnnotations
Gibt an, ob die pureQuery-Annotationen importiert werden sollen. Folgende Werte sind gültig:
  • import com.ibm.pdq.annotation.Column;
  • import com.ibm.pdq.annotation.Id;
  • import com.ibm.pdq.annotation.GeneratedKey;
  • import com.ibm.pdq.annotation.Table;
  • Die Bean muss die Tabellenannotation (Table) importieren, wenn der Name der Bean nicht mit dem Namen des entsprechenden Datenobjekts übereinstimmt.
  • Die Bean muss die Spaltenannotation (Column) auch importieren, wenn mindestens ein Name der Eigenschaften in den Beans nicht mit der entsprechenden Spalte oder dem entsprechenden Parameter im Datenbankobjekt übereinstimmt.
  • Die Bean kann die ID-Annotation (Id) importieren, wenn Sie diese Annotation verwenden wollen, um anzuzeigen, welche Spalten zum Primärschlüssel gehören.
importTypes
Gibt die zu importierenden Java-Typen an.
name
Gibt den Namen der Bean an.
package
Gibt den Namen des Java- Pakets an, in das der generierte Code eingefügt werden soll.
srcContainer
Gibt den Ordner in dem Projekt an, in das der generierte Code eingefügt werden soll.
superClass
Gibt die Superklasse der Bean an.
column
Die Attribute dieses Tags beschreiben eine Spalte im Datenbankobjekt.
colLength
Gibt die Länge der Spalte an.
colType
Gibt den Datentyp für die Werte in der Spalte an.
isAlwaysGenCol
Gibt an, ob die Werte in der Spalte immer generiert werden. Gültige Werte sind true und false.
isIdentityCol
Gibt an, ob die Spalte eine Identitätsspalte ist. Gültige Werte sind true und false.
isKey
Gibt an, ob die Spalte eine Schlüsselspalte ist. Gültige Werte sind true und false.
isUniqueColName
Gibt an, ob der Spaltenname eindeutig ist. Gültige Werte sind true und false.
isUserDefinedType
Gibt an, ob der Typ der Spalte benutzerdefiniert ist. Gültige Werte sind true und false.
name
Gibt den Namen der Spalte an.
tableName
Gibt den Namen der Tabelle an, zu der die Spalte gehört.
connection
Das Attribut dieses Tags gibt den Namen der zu verwendenden Datenbankverbindung an.
name
Gibt den Namen der zu verwendenden Datenbankverbindung an.
field
Die Tags in diesem Tag beschreiben, wie eine bestimmte Spalte im Datenbankobjekt einer bestimmten Eigenschaft der Bean zugeordnet wird.
fieldInfos
Die Tags in diesem Tag beschreiben, wie Spalten im Datenbankobjekt den Eigenschaften der Bean zugeordnet werden.
interface
Beschreibt die zu generierende Schnittstelle.
importAnnotations
Gibt die pureQuery-Annotationen an, die in die generierte Schnittstelle importiert werden sollen. Folgende Werte sind gültig:
  • 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
Gibt die zu importierenden Java-Typen an. Sie müssen alle Typen importieren, die nicht zum Paket java.lang.* gehören.
interfaceMerge
Stimmt der angegebene Name der zu generierenden Schnittstelle mit dem Namen der Java-Klasse überein, die im Java-Zielprojekt bereits vorhanden ist, wird hiermit angegeben, dass der Inhalt der vorhandenen Klasse mit der neu generierten Schnittstelle gemischt werden soll.
interfaceName
Gibt den Namen der Schnittstelle an, die für den Programmierstil der mit Annotationen versehenen Methode generiert werden soll.
package
Gibt den Namen des Java- Pakets an, in das der generierte Code eingefügt werden soll.
srcContainer
Gibt den Ordner in dem Projekt an, in das der generierte Code eingefügt werden soll.
parameter
Die Attribute dieses Tags beschreiben eine bestimmte Eigenschaft der Bean.
accessor
Gibt den Namen der Methode an, mit der der Wert aus der Spalte abgerufen wird.
javaType
Gibt den Java-Datentyp für die Eigenschaft der Bean an.
name
Gibt den Namen der Eigenschaft an.
propertyName
Gibt den Namen der Bean-Eigenschaft an.
resultSet
Die in diesem Tag enthaltenen Tags beschreiben den Inhalt der generierten Bean, wenn Sie im Tag selection für das Attribut genTableBean den Wert "false" angegeben haben.
selection
Die Attribute dieses Tags beschreiben, welcher pureQuery-Code mithilfe dieses XML-Codes generiert wird, sowie den Assistenten, der die Codegenerierung initiiert.
genAlwaysJUnit
Gibt an, ob Testklassen als JUnit-Anwendungsbeispiele generiert werden. Gültige Werte sind true und false.
genIncludeConn
Geben Sie an, ob in generierte Testklassen Informationen zur Datenbankverbindung aufgenommen werden sollen. Gültige Werte sind true und false.
genInlineSample
Gibt an, ob eine Testklasse generiert werden soll, die den integrierten Programmierstil verwendet. Gültige Werte sind true und false.
genInterface
Gibt an, ob eine Schnittstelle generiert werden soll, die den Programmierstil der mit Annotationen versehenen Methode verwendet. Gültige Werte sind true und false.
genInterfaceTest
Gibt an, ob eine Testklasse generiert werden soll, die die Methoden in einer Implementierung der generierten Schnittstelle aufruft. Gültige Werte sind true und false.
genSampleUtil
Gibt an, dass eine Klasse generiert wird, die statische Methoden enthält, die von den Testklassen bei ihrer Ausführung aufgerufen werden. Diese Methoden geben die Ergebnisse der Ausführung der Testklassen in der Konsolsicht aus. Diese Klasse enthält außerdem Code zum Herstellen von Datenbankverbindungen für die Testklassen.
genType
Gibt an, dass der Assistent pureQuery-Code aus Tabelle generieren die Codegenerierung einleitet.
sqlSelections
Soll eine Schnittstelle für den Programmierstil der mit Annotationen versehenen Methode generiert werden, beschreibt dieser Tag, welche SQL-Anweisungen generiert und für welche SQL-Anweisungen mit Annotationen versehene Methoden erstellt werden sollen.
createByObject
Generiert eine Anweisung INSERT, die eine Zeile in das Datenbankobjekt einfügt. Die Werte werden in einem Java-Objekt übergeben.
createByParameters
Generiert eine Anweisung INSERT, die eine Zeile in das Datenbankobjekt einfügt. Jeder Wert wird als separater Parameter übergeben.
deleteByObject
Generiert eine Anweisung DELETE, die eine Zeile aus dem Datenbankobjekt löscht, bei der der Primärschlüssel einem bestimmten Wert entspricht. Der Wert des Primärschlüssels wird in einem Objekt übergeben.
deleteByParameters
Generiert eine Anweisung DELETE, die eine Zeile aus dem Datenbankobjekt löscht, bei der der Primärschlüssel einem bestimmten Wert entspricht. Der Wert des Primärschlüssels wird in Form eines oder mehrerer Parameter übergeben. Ist kein Primärschlüssel vorhanden, werden alle Spalten als Parameter verwendet.
selectAll
Generiert eine Anweisung SELECT, die alle Zeilen aus dem Datenbankobjekt zurückgibt.
selectByObject
Generiert eine Anweisung SELECT, die alle Zeilen aus dem Datenbankobjekt zurückgibt, bei denen der Primärschlüssel einem bestimmten Wert entspricht. Der Wert wird in einem Objekt übergeben. Verfügt das Datenbankobjekt über keinen Primärschlüssel, werden alle Spalten als Schlüssel verwendet.
selectByParameters
Generiert eine Anweisung SELECT, die die Zeile aus dem Datenbankobjekt zurückgibt, bei der der Primärschlüssel einem bestimmten Wert entspricht. Jeder Wert wird als separater Parameter übergeben. Verfügt das Datenbankobjekt über keinen Primärschlüssel, werden alle Spalten als Schlüssel verwendet.
updateByObject
Generiert eine Anweisung UPDATE, die mindestens einen Wert in einer Zeile des Datenbankobjekts ändert. Die Werte werden in einem Objekt übergeben.
updateByParameters
Generiert eine Anweisung UPDATE, die mindestens einen Wert in einer Zeile des Datenbankobjekts ändert. Jeder Wert wird als separater Parameter übergeben. Die Werte des Primärschlüssels werden zusammen mit den neuen Werten der aktualisierten Spalten übergeben.
useAsteriskForAllColumns
Gibt an, dass in Anweisungen SELECT, die eine Auswahl aus allen Spalten im Datenbankobjekt treffen, ein Stern anstelle von Spaltennamen verwendet werden soll.
table
Die Attribute dieses Tags geben das Datenbankobjekt (Aliasname, MQT, Tabelle oder Sicht) an, aus dem pureQuery-Code generiert werden soll, und wie der Name des Datenbankobjekts in den resultierenden SQL-Anweisungen formatiert werden soll.
includeSchemaInSQL
Gibt an, ob das Schema in die generierten SQL-Anweisungen eingefügt werden soll. Gültige Werte sind true und false.
name
Gibt den Namen des Datenbankobjekts an.
schema
Gibt das Schema des Datenbankobjekts an.
testCode
importTypes
Gibt die zu importierenden Java-Typen an. Sie müssen alle Typen importieren, die nicht zum Paket java.lang.* gehören.
inlineSampleName
Gibt den Namen an, den die generierte Testklasse für den integrierten Programmierstil erhalten soll.
interfaceTestName
Gibt den Namen der Testklasse für den Programmierstil der mit Annotationen versehenen Methode an.
package
Gibt den Namen des Java- Pakets an, in das der generierte Code eingefügt werden soll.
srcContainer
Gibt den Ordner in dem Projekt an, in das der generierte Code eingefügt werden soll.

Feedback