この XML 文書は、GenTableBean.jet、GenTableInlineSample.jet、GenTableInterface.jet、GenTableInterfaceJUnit.jet、および GenTableInterfaceTest.jet のテンプレートと共に使用する JET 変換のサンプル入力です。
この XML は、DB2® database
for Linux, UNIX,
and Windows の SAMPLE データベースの STAFF 表を表します。
<?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
- このタグの属性は、生成される Bean を示します。
- genBean
- 新規 Bean を作成するか、bean タグで既存の Bean を記述するかを指定します。
- true
- 新規 Bean を作成します。
- false
- bean タグは、既存の Bean を示します。
- genPublicFields
- Bean のプロパティーのアクセス・レベルを指定します。
- 値が true の場合は、Bean のプロパティーは public として生成されます。
- 値が false の場合は、Bean のプロパティーは protected として生成され、get メソッドおよび set メソッドを使用してアクセスできます。
- importAnnotations
- pureQuery アノテーションをインポートするかどうかを指定します。
許容される値は以下のとおりです。
- import com.ibm.pdq.annotation.Column;
- import com.ibm.pdq.annotation.Id;
- import com.ibm.pdq.annotation.GeneratedKey;
- import com.ibm.pdq.annotation.Table;
- Bean の名前が対応するデータベース・オブジェクトの名前と一致しない場合、Bean は Table アノテーションをインポートする必要があります。
- Bean の 1 つ以上のプロパティーの名前がデータベース・オブジェクトの対応する列やパラメーターと一致しない場合には、Bean は Column アノテーションもインポートする必要があります。
- どの列が主キーの一部であるかを示すためにアノテーションを使用したい場合、Bean は ID アノテーションをインポートすることができます。
- importTypes
- どの Java 型をインポートするかを指定します。
- name
- Bean の名前を指定します。
- package
- 生成したコードを配置する Java パッケージの名前を指定します。
- srcContainer
- 生成したコードを配置するプロジェクト内のフォルダーを指定します。
- superClass
- Bean のスーパークラスを指定します。
- column
- このタグの属性は、データベース・オブジェクトの列を示します。
- colLength
- 列の長さを指定します。
- colType
- 列の値のデータ・タイプを指定します。
- isAlwaysGenCol
- 列の値を常に生成するかどうかを指定します。
許容される値は true と false です。
- isIdentityCol
- 列が ID 列かどうかを指定します。
許容される値は true と false です。
- isKey
- 列がキー列かどうかを指定します。
許容される値は true と false です。
- isUniqueColName
- 列名が固有のものかどうかを指定します。許容される値は true と false です。
- isUserDefinedType
- 列のタイプがユーザー定義のものかどうかを指定します。許容される値は true と false です。
- name
- 列の名前を指定します。
- tableName
- 列が属する表の名前を指定します。
- connection
- このタグの属性には、使用するデータベース接続の名前を指定します。
- name
- 使用するデータベース接続の名前を指定します。
- field
- このタグ内のタグは、データベース・オブジェクト内の特定の列を Bean の特定のプロパティーにマップする方法を示します。
- fieldInfos
- このタグ内のタグは、データベース・オブジェクト内の列を Bean のプロパティーにマップする方法を示します。
- interface
- 生成するインターフェースを示します。
- importAnnotations
- 生成されたインターフェースにインポートする pureQuery アノテーションを指定します。許容される値は以下のとおりです。
- 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
- どの Java 型をインポートするかを指定します。java.lang.* パッケージに属していないすべての型をインポートしなければなりません。
- interfaceMerge
- 生成するインターフェースに指定した名前がターゲットの
Java プロジェクトに既に存在する Java クラスの名前と一致する場合、既存のクラスの内容を、新しく生成されたインターフェースにマージすることを指定したことになります。
- interfaceName
- アノテーション付きのメソッドのプログラミング・スタイル用に生成するインターフェースの名前を指定します。
- package
- 生成したコードを配置する Java パッケージの名前を指定します。
- srcContainer
- 生成したコードを配置するプロジェクト内のフォルダーを指定します。
- parameter
- このタグの属性は、Bean の特定のプロパティーを示します。
- accessor
- 列の値を取得するメソッドの名前を指定します。
- javaType
- Bean のプロパティーの Java データ・タイプを指定します。
- name
- プロパティーの名前を指定します。
- propertyName
- Bean のプロパティーの名前を指定します。
- result set
- selection タグで genTableBean 属性を「false」にした場合、このタグに含まれるタグは、生成した Bean の内容を示します。
- selection
- このタグの属性は、この XML で生成する pureQuery コードと、コード生成を開始するウィザードを示します。
- genAlwaysJUnit
- テスト・クラスを JUnit テスト・ケースとして生成するかどうかを指定します。
許容される値は true と false です。
- genIncludeConn
- 生成するテスト・クラスにデータベース接続に関する情報を含めるかどうかを指定します。
許容される値は true と false です。
- genInlineSample
- インライン・プログラミング・スタイルを使用するテスト・クラスを生成するかどうかを指定します。
許容される値は true と false です。
- genInterface
- アノテーション付きのメソッドのプログラミング・スタイルを使用するインターフェースを生成するかどうかを指定します。
許容される値は true と false です。
- genInterfaceTest
- 生成されたインターフェースのインプリメンテーションでメソッドを呼び出すテスト・クラスを生成するかどうかを指定します。
許容される値は true と false です。
- genSampleUtil
- テスト・クラスが実行されるとテスト・クラスによって呼び出される静的メソッドを含むクラスを生成するよう指定します。これらのメソッドは、テスト・クラスの実行結果をコンソール・ビューに表示します。このクラスには、テスト・クラスのためのデータベース接続を確立するコードも含まれます。
- genType
- 「表に pureQuery コードを生成」ウィザードがコード生成を開始することを指定します。
- sqlSelections
- アノテーション付きのメソッドのプログラミング・スタイル用インターフェースを生成する選択をした場合、このタグはアノテーション付きのメソッドを生成して作成する SQL ステートメントを指定します。
- createByObject
- 行をデータベース・オブジェクトに挿入する INSERT ステートメントを生成します。
値は Java オブジェクトで渡されます。
- createByParameters
- 行をデータベース・オブジェクトに挿入する INSERT ステートメントを生成します。
値はそれぞれ別個のパラメーターとして渡されます。
- deleteByObject
- 主キーがある値に等しい行をデータベース・オブジェクトから削除する DELETE ステートメントを生成します。
主キーの値は、オブジェクトで渡されます。
- deleteByParameters
- 主キーがある値に等しい行をデータベース・オブジェクトから削除する DELETE ステートメントを生成します。
主キーの値は、1 つ以上のパラメーターとして渡されます。
主キーがない場合、すべての列がパラメーターとして使用されます。
- selectAll
- データベース・オブジェクトからすべての行を返す SELECT ステートメントを生成します。
- selectByObject
- 主キーがある値に等しい行をすべてデータベース・オブジェクトから返す SELECT ステートメントを生成します。
値は、オブジェクトで渡されます。
データベース・オブジェクトに主キーがない場合、すべての列がキーとして使用されます。
- selectByParameters
- 主キーがある値に等しい行をデータベース・オブジェクトから返す SELECT ステートメントを生成します。
値はそれぞれ別個のパラメーターとして渡されます。
データベース・オブジェクトに主キーがない場合、すべての列がキーとして使用されます。
- updateByObject
- データベース・オブジェクトの行の 1 つ以上の値を変更する UPDATE ステートメントを生成します。
値はオブジェクトで渡されます。
- updateByParameters
- データベース・オブジェクトの行の 1 つ以上の値を変更する UPDATE ステートメントを生成します。
値はそれぞれ別個のパラメーターとして渡されます。
主キーの値は、更新される列の新しい値と共に渡されます。
- useAsteriskForAllColumns
- データベース・オブジェクトのすべての列から選択する SELECT ステートメントで、列名の代わりにアスタリスクを使用することを指定します。
- table
- このタグの属性は、pureQuery コードの生成元のデータベース・オブジェクト (別名、マテリアライズ照会表、表、またはビュー) と、結果の SQL ステートメントでのデータベース・オブジェクトの名前の形式を指定します。
- includeSchemaInSQL
- 生成する SQL ステートメントにスキーマを含めるかどうかを指定します。
許容される値は true と false です。
- name
- データベース・オブジェクトの名前を指定します。
- schema
- データベース・オブジェクトのスキーマを指定します。
- testCode
- importTypes
- どの Java 型をインポートするかを指定します。java.lang.* パッケージに属していないすべての型をインポートしなければなりません。
- inlineSampleName
- インライン・プログラミング・スタイル用に生成されるテスト・クラスに与える名前を指定します。
- interfaceTestName
- アノテーション付きのメソッドのプログラミング・スタイル用のテスト・クラスの名前を指定します。
- package
- 生成したコードを配置する Java パッケージの名前を指定します。
- srcContainer
- 生成したコードを配置するプロジェクト内のフォルダーを指定します。