이 XML 문서는 GenProcedureInlineSample.jet, GenProcedureInlineJunit.jet, GenProcedureInterface.jet, GenProcedureInterfaceJunit.jet, GenProcedureInterfaceTest.jet
또는 GenProcedureParmBean.jet 템플리트를 사용하여 JET 변환을 수행하는 입력 샘플입니다.
이 XML에서는 IN 매개변수 salvalue를 사용하는 스토어드 프로시저
salaryGreater를 설명합니다. 이 스토어드 프로시저는 SALARY가 IN 매개변수 값보다
큰 경우 STAFF 테이블의 모든 행을 포함하는 결과 세트를 리턴합니다.
<?xml version="1.0" encoding="UTF-8"?>
<genCodeData>
<selection genAlwaysJUnit="false" genIncludeConn="false"
genInlineSample="true" genInterface="true" genInterfaceTest="true"
genSampleUtil="false" genType="genFromProcedure" />
<connection name="SAMPLE1" />
<procedure handlerClass="" includeSchemaInSQL="false"
name="SALARY_GREATER" schema="MYSCHEMA">
<procParameters genBean="true" genPublicFields="false"
importTypes="import java.math.BigDecimal;" name="Salary_greaterParam"
package="myPackage" srcContainer="MyProject/src"
superClass="java.lang.Object">
<parameter javaType="BigDecimal" name="salvalue" parameterMode="1" parameterType="DECIMAL"/>
</procParameters>
<interface importAnnotations=""
importTypes="import java.math.BigDecimal;" interfaceMerge="false"
interfaceName="Salary_greaterData" package="myPackage"
srcContainer="MyProject/src" />
<testCode
importTypes="import java.math.BigDecimal;import java.util.Iterator;"
inlineSampleName="Salary_greaterInlineSample"
interfaceTestName="Salary_greaterDataTest" package="myPackage"
srcContainer="MyProject/src" />
<results>
<resultSet>
<bean genBean="true" genPublicFields="false"
importAnnotations="" importTypes="import java.math.BigDecimal;"
name="Salary_greater" package="myPackage"
srcContainer="MyProject/src" superClass="" />
<fieldInfos>
<field>
<column colLength="" colType="SMALLINT"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="ID"
tableName="SALARY_GREATER" />
<parameter accessor="getId()" javaType="short"
name="id" propertyName="id" />
</field>
<field>
<column colLength="" colType="VARCHAR"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="NAME"
tableName="SALARY_GREATER" />
<parameter accessor="getName()"
javaType="String" name="name" propertyName="name" />
</field>
<field>
<column colLength="" colType="SMALLINT"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="DEPT"
tableName="SALARY_GREATER" />
<parameter accessor="getDept()" javaType="short"
name="dept" propertyName="dept" />
</field>
<field>
<column colLength="" colType="CHAR"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="JOB"
tableName="SALARY_GREATER" />
<parameter accessor="getJob()" javaType="String"
name="job" propertyName="job" />
</field>
<field>
<column colLength="" colType="SMALLINT"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="YEARS"
tableName="SALARY_GREATER" />
<parameter accessor="getYears()"
javaType="short" name="years" propertyName="years" />
</field>
<field>
<column colLength="" colType="DECIMAL"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="SALARY"
tableName="SALARY_GREATER" />
<parameter accessor="getSalary()"
javaType="BigDecimal" name="salary" propertyName="salary" />
</field>
<field>
<column colLength="" colType="DECIMAL"
isAlwaysGenCol="false" isIdentityCol="false" isKey="false"
isUniqueColName="true" isUserDefinedType="false" name="COMM"
tableName="SALARY_GREATER" />
<parameter accessor="getComm()"
javaType="BigDecimal" name="comm" propertyName="comm" />
</field>
</fieldInfos>
</resultSet>
</results>
</procedure>
</genCodeData>
- bean
- 이 태그 속성에서는 단일 결과 세트에 대해 생성된 Bean을 설명합니다.
- genBean
- 새 Bean을 작성하는지 또는 bean 태그가
기존 Bean을 설명하는지 여부를 지정합니다.
- true
- 새 Bean을 작성합니다.
- false
- bean 태그가 기존 Bean을 설명합니다.
- genPublicFields
- Bean 특성의 액세스 레벨을 지정합니다.
- true 값은 Bean 특성을 공용으로 생성합니다.
- false 값은 Bean 특성을 보호됨 상태로 생성하고 get 및 set 메소드를 통해 이 특성에
대한 액세스를 허용합니다.
- importAnnotations
- pureQuery 어노테이션을 가져올 것인지 여부를 지정합니다. 허용 가능한 값은
다음과 같습니다.
- mport com.ibm.pdq.annotation.Column;
- import com.ibm.pdq.annotation.Table;
- Bean 이름이 이에 대응하는 데이터베이스 오브젝트 이름과 일치하지 않는 경우
Bean은 테이블 어노테이션을 가져와야 합니다.
- Bean의 특성 이름 중 하나 이상이 데이터베이스 오브젝트에서 이에 대응하는
열 또는 매개변수와 일치하지 않는 경우, Bean은 열 어노테이션도 가져와야 합니다.
- ID 어노테이션을 사용하여 기본 키에 속하는 열을 표시하려는 경우 Bean은 ID 어노테이션을
가져올 수 있습니다.
- importTypes
- 가져올
Java
유형을 지정합니다. java.lang.* 패키지에 속하지 않는 모든 유형을 가져와야 합니다.
- 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의 특정 특성을 설명합니다.
- javaType
- Bean의 특성에 대한 Java 데이터 유형을 지정합니다.
- name
- 특성의 이름을 지정합니다.
- parameterMode
- 매개변수를 IN, INOUT 또는 OUT 매개변수로 식별하는 상수입니다. 상수는 JDBC 인터페이스
parameterMetadata에 정의되어 있습니다.
- parameterType
- 매개변수의 Java 유형에 해당하는 SQL 유형을 지정합니다.
- procedure
- 이 태그 속성에서는 결과로 생성되는 SQL문에서 스토어드 프로시저 이름을 포맷팅하는 방법과 함께
pureQuery 코드를 생성할 때 사용할 스토어드 프로시저를 지정합니다.
- handlerClass
- 스토어드 프로시저의 결과를 처리하기 위해 고유 CallHandlerWithParameters 클래스를 사용하려는 경우,
패키지 및 클래스 이름을 지정합니다. CallHandlerWithParameter 클래스에 대한 정보는
CallHandlerWithParameters<CAL> 인터페이스를 참조하십시오.
- includeSchemaInSQL
- 생성된 SQL문에서 스키마를 포함할 것인지 여부를 지정합니다.
허용 가능한 값은 true 및
false입니다.
- name
- 스토어드 프로시저 이름을 지정합니다.
- schema
- 스토어드 프로시저 스키마를 지정합니다.
- procParameters
- 이 태그 속성에서는 생성된 Bean을 설명합니다.
- genBean
- 새 Bean을 작성하는지 또는 procParameters 태그가 기존 Bean을
설명하는지 여부를 지정합니다.
- true
- 새 Bean을 작성합니다.
- false
- bean 태그가 기존 Bean을 설명합니다.
- genPublicFields
- Bean 특성의 액세스 레벨을 지정합니다.
- true 값은 Bean 특성을 공용으로 생성합니다.
- false 값은 Bean 특성을 보호됨 상태로 생성하고 get 및 set 메소드를 통해 이 특성에
대한 액세스를 허용합니다.
- importTypes
- 가져올
Java
유형을 지정합니다.
- name
- Bean의 이름을 지정합니다.
- package
- 생성된 코드를 배치할
Java
패키지 이름을 지정합니다.
- srcContainer
- 생성된 코드를 배치할 프로젝트에 폴더를 지정합니다.
- superClass
- Bean의 수퍼클래스를 지정합니다.
- results
- 이 태그 내 태그에서는 스토어드 프로시저가 리턴할 수 있는 각 결과 세트에 대해 생성할
Bean을 설명합니다.
- resultSet
- 이 태그 내 태그에서는 단일 결과 세트에 대해 생성된 Bean을 설명합니다.
- selection
- 이 태그 속성에서는 코드 생성을 시작하는 마법사와 함께 이 XML로 생성되는 pureQuery 코드를 설명합니다.
- genAlwaysJUnit
- 테스트 클래스를 JUnit 테스트 케이스로 생성할 것인지 여부를 지정합니다. 허용 가능한 값은 true 및
false입니다.
- genIncludeConn
- 생성된 테스트 클래스에서 데이터베이스 연결에 대한 정보를 포함할 것인지 여부를
지정합니다. 허용 가능한 값은 true 및
false입니다.
- genInlineSample
- 인라인 메소드 프로그래밍 스타일을 사용하는 테스트 클래스를 생성할 것인지 여부를
지정합니다. 허용 가능한 값은 true 및
false입니다.
- genInterface
- 어노테이션이 있는 메소드 프로그래밍 스타일을 사용하는 인터페이스를 생성할 것인지 여부를
지정합니다. 허용 가능한 값은 true 및
false입니다.
- genInterfaceTest
- 생성된 인터페이스 구현에서 메소드를 호출하는 테스트 클래스를 생성할 것인지 여부를
지정합니다. 허용 가능한 값은 true 및
false입니다.
- genSampleUtil
- 테스트 클래스를 실행할 때 테스트 클래스에서 호출하는 정적 메소드를 포함하는
클래스를 생성하도록 지정합니다. 이러한 메소드는 테스트 클래스 실행 결과를 콘솔 보기에
보여줍니다. 이 클래스는 테스트 클래스에 대한 데이터베이스 연결을 설정하는 코드도 포함합니다.
- genType
- 스토어드 프로시저에서 pureQuery 코드 생성 마법사가
코드 생성을 시작하도록 지정합니다.
- testCode
- importTypes
- 가져올
Java
유형을 지정합니다. java.lang.* 패키지에 속하지 않는 모든 유형을 가져와야 합니다.
- inlineSampleName
- 인라인 프로그래밍 스타일을 사용하여 생성된 테스트 클래스에 부여할 이름을
지정합니다.
- interfaceTestName
- 어노테이션이 있는 메소드 프로그래밍 스타일에서 사용할 테스트 클래스 이름을 지정합니다.
- package
- 생성된 코드를 배치할
Java
패키지 이름을 지정합니다.
- srcContainer
- 생성된 코드를 배치할 프로젝트에 폴더를 지정합니다.