SQL문에서 생성된 어노테이션이 있는 메소드 인터페이스

단일 SQL문에서 코드를 생성할 때 해당 명령문에 어노테이션이 있는 메소드를 선언하는 인터페이스를 생성할 것인지 선택할 수 있습니다. 다중 SQL문에서 코드를 생성하는 경우, 워크벤치는 항상 어노테이션이 있는 메소드 인터페이스를 항상 생성하는데 이 인터페이스는 각 명령문의 메소드를 선언합니다.

SELECT문에서 생성되는 어노테이션이 있는 메소드 인터페이스

SELECT문에서 어노테이션이 있는 메소드 인터페이스를 생성하면 생성된 인터페이스에는 하나의 메소드가 포함됩니다. 이 메소드에는 @Select 어노테이션이 있습니다. 어노테이션의 컨텐츠는 원래 SELECT문입니다. 메소드 리턴 유형은 <BeanName>의 반복자(iterator)입니다.

메소드의 기본 이름은 get<Name-of-bean>입니다. 인터페이스 생성에 대한 정보를 지정할 때 이 이름을 변경할 수 있습니다.

예를 들어 SELECT문 Select * from table where col1 = ?에서 인터페이스를 생성하는 경우, 인터페이스는 다음 어노테이션이 있는 메소드를 포함합니다.
@Select(sql="Select * from name-of-table where col1 = ?")
Iterator<Name-of-bean> getName-of-bean(int param1);

사용자 정의 RowHandler의 이름을 지정하면 @Handler 어노테이션이 포함됩니다.

@Select(sql="Select * from name-of-table where col1 = ?")
@Handler(rowHandler="Name-of-handler")
Iterator<Name-of-bean> getName-of-bean(int param1);

UPDATE, INSERT 또는 DELETE문에서 생성된 어노테이션이 있는 메소드 인터페이스

UPDATE, INSERT 또는 DELETE문에서 어노테이션이 있는 메소드 인터페이스를 생성하면 생성된 인터페이스에는 @Update 어노테이션이 있는 메소드가 포함됩니다. 어노테이션의 컨텐츠는 원래 UPDATE, INSERT 또는 DELETE문입니다. 메소드 리턴 유형은 정수입니다.

CALL문에서 생성된 어노테이션이 있는 메소드 인터페이스

CALL문에서 어노테이션이 있는 메소드 인터페이스를 생성하면 생성된 인터페이스에는 @Call 어노테이션이 있는 메소드가 포함됩니다. 어노테이션의 컨텐츠는 원래 CALL문입니다.

메소드 리턴 유형은 StoredProcedureResult입니다. StoredProcedureResult 유형의 ResultSet에 액세스할 수 있습니다.

사용자 정의 CallHandlerWithParameters 클래스의 이름을 지정하면 @Handler 어노테이션이 포함됩니다.

이전에 언급된 모든 SQL문 유형에서 생성된 어노테이션이 있는 메소드 인터페이스

SELECT, UPDATE, INSERT, DELETE 또는 CALL문에서 인터페이스를 생성하면 다음 조치가 발생합니다.
  • SQL문에 포함된 호스트 변수 이름은 표준 JDBC 매개변수 표시문자("?")로 바뀝니다.
  • 생성된 메소드의 매개변수 유형은 SQL문의 메소드와 일치합니다. SQL 유형은 환경 설정 창에 있는 pureQuery 유형 맵핑 페이지의 환경 설정에 따라 Java™ 유형에 맵핑됩니다.
  • 기존 어노테이션이 있는 메소드 인터페이스의 이름을 지정하면 메소드가 해당 인터페이스에 추가됩니다.

피드백