본문 바로가기
Java

티베로 JDBC 연결 테스트 예제

by jayden-lee 2019. 4. 5.
728x90

이 글은 티베로(Tibero) 데이터베이스를 JDBC 클라이언트를 이용하여 연결 테스트하는 예제이다.

아래 코드를 실행하기 전에 데이터베이스 접속 정보를 변경해야 한다.

소스 코드

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * Tibero DBMS Connection Example
 *
 * @author jayden-lee
 */
public class TiberoConnection {

    private String ip = "Your_IP";
    private String port = "8629";           
    private String database = "Your_Database";
    private String user = "Your_ID";
    private String password = "Your_PassWord";

    private final String DRIVER_NAME = "com.tmax.tibero.jdbc.TbDriver";
    private final String TIBERO_JDBC_URL = "jdbc:tibero:thin:@" + ip + ":" + port + ":" + database;

    private Connection conn = null;

    /**
     * default constructor
     */
    public TiberoConnection() {
        // empty
    }

    public static void main(String[] args) {
        // create tiberoConnection instance
        TiberoConnection tiberoConnection = new TiberoConnection();

        // connect
        tiberoConnection.connect();

        // execute sample query
        tiberoConnection.executeQuery();

        // disconnect
        tiberoConnection.disconnect();
    }

    /**
     * create tibero connection instance
     */
    private void connect() {
        try {
            Class.forName(DRIVER_NAME);
        } catch (ClassNotFoundException e) {
            System.err.println("Class Not Found");
        }

        try {
            conn = DriverManager.getConnection(TIBERO_JDBC_URL, user, password);
        } catch (SQLException e) {
            System.err.println("DB Connection Error");
        }
    }

    /**
     * execute sample query
     */
    private void executeQuery() {
        String sampleQuery = "select * from all_users";

        try (Statement stmt = conn.createStatement();
                ResultSet rs = stmt.executeQuery(sampleQuery)) {

            ResultSetMetaData rsmd = rs.getMetaData();
            int columnCount = rsmd.getColumnCount();

            for (int i = 1; i <= columnCount; i++) {
                System.out.print(rsmd.getColumnTypeName(i) + " ");
            }

            System.out.println();

            while (rs.next()) {
                for (int i = 1; i <= columnCount; i++) {
                    System.out.print(rs.getObject(i) + " ");
                }
                System.out.println();
            }

        } catch (SQLException ex) {
            System.err.println("Execute sample query Error");
        }
    }

    /**
     * disconnect
     */
    private void disconnect() {
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {
                System.err.println("Disconnect Error");
            }
        }
    }
}

Maven Dependency 설정

Maven 공식 사이트에서는 티베로 JDBC 라이브러리가 존재하지 않는다. 그러므로 시스템 로컬에 있는 라이브러리를 이용해야 한다.

<dependency>
    <groupId>com.tmax.tibero</groupId>
    <artifactId>tibero-jdbc</artifactId>
    <version>${tibero-version}</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/src/main/resources/lib/tibero6-jdbc.jar</systemPath>
</dependency>

댓글