Membuat Koneksi JDBC ke MySQL

Biasanya sih kalau bikin aplikasi di Java terutama masalah koneksi dengan database MySQL cukup searching di Google.

Tapi sekarang beda, sepertinya saya harus baca dokumentasi dari MySQL Connector/J supaya lebih paham fungsi-fungsi yang digunakan-soalnya banyak lupa –a.

Berikut ini adalah catatan singkat yang saya buat tentang koneksi JDBC dengan MySQL.

Dokumentasi lengkapnya dapat anda baca di docs mysql-connector-java-5.1.24 yang disertakan ketika anda mengunduh MySQL Connector/J.

Membuat Koneksi JDBC ke MySQL

Ketika kita menggunakan JDBC diluar server aplikasi kita, class Driver Manager bertugas untuk mengelola terbentuknya koneksi.

DriverManager akan membuat koneksi dengan JDBC. Cara yang paling mudah adalah dengan menggunakan Class.forName yang mengimplementasikan interface java.mysql.Driver.

Dengan menggunakan MySQL Connector/J yang mana nama class nya adalah com.mysql.jdbc.Driver, kita dapat melakukan konfigurasi dengan mudah untuk melakukan koneksi dengan database.

Untuk coba-coba saya menggunakan IDE Netbeans dengan nama project JavaMySql.

Jangan lupa untuk menambahkan file JAR mysql-connector-java-5.1.24-bin.jar agar driver mysql dapat digunakan.

membuat koneksi jdbc ke java
Add JAR

Untuk mengecek apakah Driver dapat di load dan terkoneksi dengan baik dengan database gunakan source code berikut:

LoadDriver.java

public class LoadDriver {
    public static void main(String[] args) {
        Connection conn = null;
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (Exception e) {
        }

        try {
            conn = DriverManager.getConnection("jdbc:mysql://localhost/test?"+"user=root&password=");
        } catch (SQLException e) {
            System.out.println("SQLException: "+e.getMessage());
            System.out.println("SQLState: "+e.getSQLState());
            System.out.println("VendorError: "+e.getErrorCode());
        }
    }
}

Jika anda belum menambahkan library (Add JAR) maka error yang muncul adalah:

SQLException: No suitable driver found for jdbc:mysql://localhost/test?user=root&password=
SQLState: 08001
VendorError: 0

Sedangkan error yang terjadi karena MySQL belum dihidupkan adalah:

SQLException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
SQLState: 08S01
VendorError: 0

jika sudah benar, maka LoadDriver.java tidak akan menghasilkan apapun. (Build Successful).

Untuk konfigurasi koneksi ada pada baris:

conn = DriverManager.getConnection("jdbc:mysql://localhost/test?"+"user=root&password=");

Silakan sesuaikan dengan database, user dan password di MySQL anda.

Semoga bermanfaat.

Leave a Comment