투덜이 개발자

[Java] MySQL, MariaDB 연동 본문

Program Language/Java

[Java] MySQL, MariaDB 연동

엠투 2022. 8. 31. 16:38
반응형

MySQL 연동 

import java.sql.*;
import java.util.Arrays;

public class DBConnectionTest_mysql_02 {

    private static final String DB_DRIVER_CLASS = "com.mysql.jdbc.Driver";
    private static final String DB_URL = "jdbc:mysql://호스트아이피:3306/디비명?useUnicode=true&characterEncoding=utf8";
    private static final String DB_USERNAME = "아이디";
    private static final String DB_PASSWORD = "비밀번호";

    private static Connection conn;

    public static void main(String[] args) {

        try {
            Class.forName(DB_DRIVER_CLASS);
            conn = DriverManager.getConnection(DB_URL, DB_USERNAME, DB_PASSWORD);
            System.out.println("연결성공");


            Statement stmt  = conn.createStatement(); // Statement를 생성한다.

            // String query = "SELECT now()"; // 시스템의 현재 날짜시간을 출력하는 쿼리(query)
            String query = "SELECT email from user_info where id = 'asdf'"; // 실제 이메일 정보를 가져와 본다.
            ResultSet rs = stmt.executeQuery(query); // query를 실행한 결과를 rs에 담는다.

            // 실행결과가 담긴 rs에서 한 줄씩 읽어서 출력
            while (rs.next()) {
                String curDate = rs.getString(1);  // 읽어온 행의 첫번째 컬럼의 값을 String으로 읽어서 curDate에 저장
                System.out.println(curDate);       // 2022-01-11 13:53:00.0
            }

        } catch (ClassNotFoundException e) {
            System.out.println("드라이브 로딩 실패");
        } catch (SQLException e) {
            System.out.println("DB 연결 실패");
        }

    } // main()
}

 

MariaDB 연동 

import java.sql.*;

public class DBConnectionTest_maria_02 {
    private static final String DB_DRIVER_CLASS = "org.mariadb.jdbc.Driver";
    private static final String DB_URL = "jdbc:mariadb://호스트아이피:3306/디비명?useUnicode=true&characterEncoding=utf8";
    private static final String DB_USERNAME = "아이디";
    private static final String DB_PASSWORD = "비밀번호";

    private static Connection conn;

    PreparedStatement pstmt = null;

    private static void connectDB() {
        try {
            Class.forName(DB_DRIVER_CLASS);
            conn = DriverManager.getConnection(DB_URL, DB_USERNAME, DB_PASSWORD);
            System.out.println("연결성공");

            Statement stmt  = conn.createStatement(); // Statement를 생성한다.

            // String query = "SELECT now()"; // 시스템의 현재 날짜시간을 출력하는 쿼리(query)
            String query = "SELECT email from user_info where id = 'asdf'"; // 실제 이메일 정보를 가져와 본다.
            ResultSet rs = stmt.executeQuery(query); // query를 실행한 결과를 rs에 담는다.

            // 실행결과가 담긴 rs에서 한 줄씩 읽어서 출력
            while (rs.next()) {
                String curDate = rs.getString(1);  // 읽어온 행의 첫번째 컬럼의 값을 String으로 읽어서 curDate에 저장
                System.out.println(curDate);       // 2022-01-11 13:53:00.0
            }
            
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            System.out.println("드라이브 로딩 실패");

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            System.out.println("DB 연결 실패");
        }
    }


    public static void main(String[] args) {
        DBConnectionTest_maria_02 test = new DBConnectionTest_maria_02();
        test.connectDB();
    }
}

 

MySQL일때

com.mysql.jdbc.Driver
jdbc:mysql://서버아이피:3306

 

MariaDB 일때

 

org.mariadb.jdbc.Driver
jdbc:mariadb://서버아이피
반응형