2012-09-19 2 views
1

내 지속성 계층에서 일부 구현 세부 사항을 추상화하려고 시도하고 있습니다. 그것이 의미하는대로 ARRAY을 생성하는 함수와 ArrayDescriptor을 생성하는 함수가 있습니다. 현재 HSQL을 사용하는 테스트를 작성 중이며 을 JDBCConnection에서 OracleConnection으로 변환 할 때 문제가 계속 발생합니다. 이것은 다음에 의해 발생합니다 : createDescriptor. 오라클 세부 정보를 제거하고 ARRAY 및 ArrayDescriptor의 개념을 일반화 된 방식으로 사용하는 방법이 있습니까? 나는 현재 나의 소스 코드 근처에 있지 않으므로, 나는 기억을 떠 올릴 것이다.oracle.sql.ARRAY 및 oracle.sql.ArrayDescriptor의 일반 구현

답변

2

당신이 JDBC 4/자바 6 이상을 사용하는 경우, 당신은 JDBC 배열 생성 방법을 사용하여 시도 할 수, 메모리에서

Connection.createArrayOf()

, 오라클 특정 API는 당신에게 더 많은 옵션과 유연성을 제공하지만, Oracle 이외의 다른 것을 데이터베이스로 사용하려는 경우 JDBC API를 사용하는 것이 유일한 옵션입니다.


편집 : this documentation에 따르면, 오라클 JDBC 드라이버가 createArrayOf를 지원하지 않습니다(). 그러므로 코드에서 instanceof 체크를 수행하는 것이 가장 좋습니다. OracleConnection을 발견하고 Connection.createArrayOf()를 사용하는 경우 Oracle 특정 API를 사용하십시오.

+0

흥미 롭습니다. 따라서이 문제에서 완전히 벗어날 수는 없습니다. – Woot4Moo

관련 문제