kr.co.hit.live.query.element
Class SqlParameter

java.lang.Object
  extended by kr.co.hit.live.query.element.SqlParameter

public class SqlParameter
extends Object

SQL 문장내의 inline 파라메터를 파싱한 결과를 표현하기 위한 클래스이다. inline 파라메터는 #name?default:mode:type@format# 형태이다.

Since:
4.0
Author:
김형도

Field Summary
static String DEF_KIND_DELIM
           
static int DEF_VALUE_KIND
          실제 값을 DefinitionMap에서 가져오는 경우
static String DEFAULT_DATE_FORMAT
          타입이 DATE인 경우 주어진 문자열을 java.sql.Date 객체로 변환 할때 사용되는 포멧 문자열의 디폴트값.
static String DEFAULT_TIME_FORMAT
          타입이 TIME인 경우 주어진 문자열을 java.sql.Time 객체 로 변환 할때 사용되는 포멧 문자열의 디폴트값.
static String DEFAULT_TIMESTAMP_FORMAT
          타입이 TIMESTAMP 경우 주어진 문자열을 java.sql.Timestamp 객체로 변환 할때 사용되는 포멧 문자열의 디폴트값.
static int MODE_IN
          Stored Procedure의 파라메터로 사용될 때 입력용
static int MODE_INOUT
          Stored Procedure의 파라메터로 사용될 때 입력과 출력 모두 사용
static int MODE_OUT
          Stored Procedure의 파라메터로 사용될 때 출력용
static String ROLE_KIND_DELIM
          파라메터 종류 구분을 위한 구분자
static int ROLE_VALUE_KIND
          실제 값을 현재 ServiceContext의 getRole()을 통해서 찾아오는 파라메터 종류
static int UNKNONW_VALUE_KIND
          알 수 없는 파라메터 종류
static int VO_VALUE_KIND
          실제 값을 입력된 ValueObject에서 찾아오는 파라메터 종류
 
Constructor Summary
SqlParameter(String inlineParam)
          "name?
SqlParameter(String name, int mode, int type, String format, int kind, boolean iterative, int iteration, Object defValue)
           
 
Method Summary
 SqlParameter clone()
           
 Object getDefaultValue()
           
 String getFormat()
           
 int getKind()
           
 int getMode()
           
 String getName()
           
 Object getParameterObject(ValueObject paramVO, int voIdx, DbmsSupporter supporter, DefinitionMap defMap)
          파라메터의 종류에 따라서 ValueObject또는 ServiceContext에서 값을 찾는다.
 Object getParameterValue(ValueObject paramVO, int voIdx, DbmsSupporter supporter, DefinitionMap defMap)
          주어진 paramVO의 voIdx 번째 row 값들 중에서 자신의 컬럼명에 해당되는 값을 가져와 자신의 type@format 에 맞추어 타입 변환 후 그 객체를 반환한다.
 int getType()
           
 SqlParameter setIteration(int count)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

MODE_IN

public static final int MODE_IN
Stored Procedure의 파라메터로 사용될 때 입력용

See Also:
Constant Field Values

MODE_OUT

public static final int MODE_OUT
Stored Procedure의 파라메터로 사용될 때 출력용

See Also:
Constant Field Values

MODE_INOUT

public static final int MODE_INOUT
Stored Procedure의 파라메터로 사용될 때 입력과 출력 모두 사용

See Also:
Constant Field Values

UNKNONW_VALUE_KIND

public static final int UNKNONW_VALUE_KIND
알 수 없는 파라메터 종류

See Also:
Constant Field Values

VO_VALUE_KIND

public static final int VO_VALUE_KIND
실제 값을 입력된 ValueObject에서 찾아오는 파라메터 종류

See Also:
Constant Field Values

ROLE_VALUE_KIND

public static final int ROLE_VALUE_KIND
실제 값을 현재 ServiceContext의 getRole()을 통해서 찾아오는 파라메터 종류

See Also:
Constant Field Values

DEF_VALUE_KIND

public static final int DEF_VALUE_KIND
실제 값을 DefinitionMap에서 가져오는 경우

See Also:
Constant Field Values

ROLE_KIND_DELIM

public static final String ROLE_KIND_DELIM
파라메터 종류 구분을 위한 구분자

See Also:
Constant Field Values

DEF_KIND_DELIM

public static final String DEF_KIND_DELIM
See Also:
Constant Field Values

DEFAULT_DATE_FORMAT

public static final String DEFAULT_DATE_FORMAT
타입이 DATE인 경우 주어진 문자열을 java.sql.Date 객체로 변환 할때 사용되는 포멧 문자열의 디폴트값.

See Also:
Constant Field Values

DEFAULT_TIME_FORMAT

public static final String DEFAULT_TIME_FORMAT
타입이 TIME인 경우 주어진 문자열을 java.sql.Time 객체 로 변환 할때 사용되는 포멧 문자열의 디폴트값.

See Also:
Constant Field Values

DEFAULT_TIMESTAMP_FORMAT

public static final String DEFAULT_TIMESTAMP_FORMAT
타입이 TIMESTAMP 경우 주어진 문자열을 java.sql.Timestamp 객체로 변환 할때 사용되는 포멧 문자열의 디폴트값.

See Also:
Constant Field Values
Constructor Detail

SqlParameter

public SqlParameter(String name,
                    int mode,
                    int type,
                    String format,
                    int kind,
                    boolean iterative,
                    int iteration,
                    Object defValue)

SqlParameter

public SqlParameter(String inlineParam)
"name?default:mode:type" 형태의 문자열을 파싱하여 SqlParameter를 생성한다.

Parameters:
inlineParam -
Method Detail

clone

public SqlParameter clone()
Overrides:
clone in class Object

setIteration

public SqlParameter setIteration(int count)

getName

public String getName()

getMode

public int getMode()

getType

public int getType()

getKind

public int getKind()

getFormat

public String getFormat()

getDefaultValue

public Object getDefaultValue()

getParameterObject

public Object getParameterObject(ValueObject paramVO,
                                 int voIdx,
                                 DbmsSupporter supporter,
                                 DefinitionMap defMap)
파라메터의 종류에 따라서 ValueObject또는 ServiceContext에서 값을 찾는다.

Parameters:
paramVO -
voIdx -
Returns:

getParameterValue

public Object getParameterValue(ValueObject paramVO,
                                int voIdx,
                                DbmsSupporter supporter,
                                DefinitionMap defMap)
                         throws ParseException
주어진 paramVO의 voIdx 번째 row 값들 중에서 자신의 컬럼명에 해당되는 값을 가져와 자신의 type@format 에 맞추어 타입 변환 후 그 객체를 반환한다.

Parameters:
paramVO -
voIdx -
Returns:
Throws:
ParseException

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2014. All Rights Reserved.