ablog

不器用で落着きのない技術者のメモ

MariaDB Connector/J で MySQL に接続する Java プログラム

MariaDB Connector/J で MySQL に接続する Java プログラム。

ソースコード

ほぼ MariaDB Connector/J で MariaDB 10.3 に接続する - Qiita のまま。パッケージ名を削除して、接続情報を変更しただけ。

import java.sql.*;

public class JdbcTest {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Connection conn = null;
        Statement stmt = null;
        try {
            Class.forName("org.mariadb.jdbc.Driver");

            System.out.print("Connecting to DB...");
            conn = DriverManager.getConnection(
                    "jdbc:mariadb://aurora01.cluster-******.ap-northeast-1.rds.amazonaws.com:3306/mydb", "awsuser", "Password");
            System.out.println("done.");

            stmt = conn.createStatement();
            String sql = "SELECT user, host from mysql.user";
            ResultSet hrs = stmt.executeQuery(sql);

            while (hrs.next()) {
                String user = hrs.getString(1);
                String host = hrs.getString(2);
                System.out.println("User: " + user + " Host: "+ host);
            }
        } catch (SQLException se) {
            //Handle errors for JDBC
            se.printStackTrace();
        } catch (Exception e) {
            //Handle errors for Class.forName
            e.printStackTrace();
        } finally {
            //finally block used to close resources
            try {
                if (stmt != null) {
                    conn.close();
                }
            } catch (SQLException se) {
            }// do nothing
            try {
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException se) {
                se.printStackTrace();
            }//end finally try
        }//end try
        System.out.println("Good bye!");
    }
}

実行する

% javac JdbcTest.java
  • 実行する
%  ls -1
JdbcTest.class
JdbcTest.java
mariadb-java-client-1.7.0.jar
% export CLASSPATH=./mariadb-java-client-1.7.0.jar:.
% java JdbcTest
Connecting to DB...done.
User: awsuser Host: %
User: rdsadmin Host: localhost
Good bye!