현상
데이터베이스와 JAVA 어플리케이션의 상호작용을 돕는 Object Relation Mapping(ORM) 프레임워크인 iBatis, Mybatis와 Tibero 연동 시 Cursor를 사용할 경우, JDBC-590704 : Unsupported SQL Type 에러가 발생합니다.
참고
iBatis/Mybatis 내에서 mapper 정의 부분에서 jdbcType="CURSOR" 선언시 type parsing 중
에러가 발생하며, iBatis/Mybatis를 사용하는 3rd Party 솔루션도 대상이 될 수 있습니다.
원인
iBatis/Mybatis 연동시 JDBC mapper 차이로 발생하는 현상 입니다.
ibatis/mybatis에서는 기본적으로 JdbcType enum에 오라클 기준값으로 설정되어 Curosr 값이 -10으로 선언되있으나, Tibero jdbc 상에는 Cursor 값이 -17로 지정되어 해당 현상이 발생합니다.
해결
1.
MyBatis의 org.apache.ibatis.type.JdbcType.java에 TB_CURSOR(-17) 상수 값을 추가, 빌드
2.
jar 파일 생성
참고
jdbcType="TB_CURSOR" 지정 방법 등 수행 작업에 대한 추가적인 문의는
티맥스티베로 기술지원(1544-8629)으로 연락주시기 바랍니다.