사용자 도구

사이트 도구


database:oracle:jdbc

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
database:oracle:jdbc [2020/07/02 13:40]
kwon37xi
database:oracle:jdbc [2020/07/31 14:21] (현재)
kwon37xi [Oracle JDBC Driver]
줄 1: 줄 1:
 ====== Oracle JDBC Driver ====== ====== Oracle JDBC Driver ======
-  * https://mvnrepository.com/artifact/oracle/oracle-jdbc+  * JDBC 드라이버가 여러 MVN Repository 에 산개해 있다. 어느게 진짜냐? 
 +  * https://mvnrepository.com/artifact/com.oracle.database.jdbc : 가장 유력해보이는 최신 버전 유지 리포지토리 
 +    * https://mvnrepository.com/artifact/com.oracle.ojdbc : 최신버전이 부족함. 
 +    * https://mvnrepository.com/artifact/com.oracle.jdbc : 최신버전이 부족함. 
 +  * JDK 버전에 따라 선택해야 한다. 
 +    * [[https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc6|ojdbc6]] : JDK 6,7,8 
 +    * [[https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc8|ojdbc8]] : JDK 8,9,11 
 +    * [[https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc10|ojdbc10]] : JDK 10, 11
   * [[https://www.oracle.com/kr/database/technologies/appdev/jdbc.html|JDBC Drivers]]   * [[https://www.oracle.com/kr/database/technologies/appdev/jdbc.html|JDBC Drivers]]
 +  * [[http://www.orafaq.com/wiki/JDBC|JDBC - Oracle FAQ]]
  
 +===== orai18n =====
 +  * https://mvnrepository.com/artifact/com.oracle.database.nls/orai18n
 +  * ''KO16MSWIN949'' 같은 비유니코드 문자집합 사용시 ''orai18n'' 패키지 추가 필요.
 +
 +===== 기본 설정 =====
 +  * Driver class : ''oracle.jdbc.driver.OracleDriver''
 +  * 기본 JDBC Url 형태 : ''jdbc:oracle:thin:@localhost:1521:<sid>'' 
 +
 +===== Connection Properties =====
 +  * JDBC URL로 설정하지는 못하고, Connection Pool 에서 connection properties 로 설정할 수 있는 값.
 +  * 정확한 공식 문서를 찾지 못했음.
 +    * [[https://d2.naver.com/helloworld/1321|JDBC Internal - 타임아웃의 이해]] 참조
 +    * [[https://docs.oracle.com/cd/E21454_01/html/821-2594/cnfg_oracle-env_r.html|Oracle Adapter Environment Properties - Configuring Environment Components for Oracle Java CAPS Database Adapters]]
 +    * [[https://docs.oracle.com/cd/E57185_01/ESTUG/apbs02s23.html|oracle.jdbc.ReadTimeout]]
 +  * ''oracle.net.CONNECT_TIMEOUT'' : Connection timeout millis, 예) ''1000''(1초)
 +  * ''oracle.jdbc.ReadTimeout'' : Read timout millis, 예) ''60000''(1분) 
 +
 +===== Logging =====
 +  * ''ojdbc*_g.jar'' 처럼 ''_g''로 끝나는 라이브러리를 사용하면 로그를 남길 수 있다.
 +  * https://mvnrepository.com/artifact/com.oracle.database.jdbc.debug
 +  * [[https://docs.oracle.com/cd/B28359_01/java.111/b31224/diagnose.htm|Diagnosability in JDBC]]
 +  * [[https://www.oracle.com/technetwork/topics/11-2.pdf|]]
 +  * [[https://oboki.net/workspace/java/oracle-diagnosability-in-jdbc-driver%EC%97%90%EC%84%9C-%EC%82%AC%EC%9A%A9%EB%90%98%EB%8A%94-sql-%EB%A1%9C%EA%B9%85/|[Oracle] Diagnosability in Jdbc, driver에서 사용되는 SQL 로깅 – oboki]]
 +
 +<code>
 +testRuntimeOnly ('com.oracle.database.jdbc.debug:ojdbc8_g')
 +</code>
 +
 +  * Java 실행시 ''-Doracle.jdbc.Trace=true'' 만 준다.
 +  * [[java:slf4j|Slf4j]] 사용시 ''jcl-over-slf4j'' 설정만 돼 있다면, 실제 slf4j 구현체(보통은 [[java:logback|Logback]]에 로그 레벨 설정을 해주면 된다.
 +
 +<code xml>
 +<logger level="DEBUG" name="oracle.jdbc" />
 +<logger level="DEBUG" name="oracle.sql" />
 +<logger level="DEBUG" name="oracle.net" />
 +</code>
database/oracle/jdbc.1593664801.txt.gz · 마지막으로 수정됨: 2020/07/02 13:40 저자 kwon37xi