2011년 12월 18일 일요일

DB2 JDBC 타입2, 타입4 드라이버 코드 비교

타입2, 타입4 비교표


 JDBC 드라이버 타입 2 JDBC 드라이버 타입 4 
 톰캣에 넣을 라이브러리db2java.jar
(Native LIB는 PATH상에)
db2jcc.jar
db2jcc_license_cu.jar
 Class Loadingstatic {
    try {
      Class.forName("COM.ibm.db2.jdbc.app.DB2Driver");
    } catch ( Exception e) {
        e.printStackTrace();
    }
}
static {
    try {
        Class.forName("com.ibm.db2.jcc.DB2Driver");
    } catch ( Exception e) {
        e.printStackTrace();
    }
}
 Query & ResultString url = "jdbc:db2:SAMDB";
String user_id="db2admin";
String password = "rational";

Connection conn = null;
Statement stmt = null;
ResultSet rs = null;

try {
    conn = DriverManager.getConnection(url,user_id,password);
    stmt  = conn.createStatement();
    rs = stmt.executeQuery("select id,name from SAMTABLE");
  
    while(rs.next()) {
        int id = rs.getInt(1);
        String name = rs.getString(2);
    }

} catch ( SQLException e) {
    e.printStackTrace();
}

try {
    rs.close();
    stmt.close();
    conn.close();
} catch ( Exception e) {
    e.printStackTrace();
}
String url = "jdbc:db2://localhost:50000/SAMDB";
String user_id="db2admin";
String password = "rational";

Connection conn = null;
Statement stmt = null;
ResultSet rs = null;

try {
    conn = DriverManager.getConnection(url,user_id,password);
    stmt  = conn.createStatement();
    rs = stmt.executeQuery("select id,name from SAMTABLE");
  
    while(rs.next()) {
        int id = rs.getInt(1);
        String name = rs.getString(2);
    }

} catch ( SQLException e) {
    e.printStackTrace();
}

try {
    rs.close();
    stmt.close();
    conn.close();
} catch ( Exception e) {
    e.printStackTrace();
}



DB2 JDBC 드라이버 발전사

V8 이전의 JDBC driver을 "DB2 JDBC 드라이버"라 칭하고,
v8 이후에 새롭게 추가된 JDBC driver를 "Universal JDBC 드라이버"라 명명합니다.

v8 이상에서는 Universal JDBC 드라이버를 사용할 것을 권장합니다.
http://www.ibm.com/developerworks/data/library/techarticle/dm-0512kokkat/

JDBC JAR 파일
  • db2java.zip: DB2 JDBC 타입2와 타입3 드라이버
  • db2jcc.jar: Universal JDBC 타입2와 타입4 드라이버

라이센스 JAR 파일 : Universal JDBC 드라이버 사용시 필요
  • db2jcc_license_cu.jar : LUW(Linux,Unix,Windows) 용
  • db2jcc_license_cisuz.jar : iSeries, z/OS용

JDBC Drvier 클래스명
  • DB2 JDBC 타입2 드라이버: COM.ibm.db2.jdbc.app.DB2Driver
  • DB2 JDBC 타입3 드라이버: COM.ibm.db2.jdbc.net.DB2Driver
  • Universal JDBC 타입2 드라이버: com.ibm.db2.jcc.DB2Driver
  • Universal JDBC 타입4 드라이버: com.ibm.db2.jcc.DB2Driver

JDBC URL 형식
  • DB2 JDBC 타입2 드라이버: jdbc:db2:db_name
  • DB2 JDBC 타입3 드라이버: jdbc:db2://host_name:port_name/db_name
  • Universal JDBC 타입2 드라이버: jdbc:db2:db_name
  • Universal JDBC 타입4 드라이버: jdbc:db2://host_name:port_name/db_name

Windows DB2 사용시 주의점
Universal JDBC 타입4 드라이버 + SUN JDK 사용시,
IBM CodeSet으로 자동변환이 안되기 때문에 DATABASE생성시 UTF-8코드로 생성해주어야 함.


댓글 없음:

댓글 쓰기