- Back to Home »
- Cara Connect MySql ke Java
Posted by : Unknown
Selasa, 28 November 2017
Pengertian JDBC
JDBC merupakan teknologi
standar Java yang menjadi bagian dari JDK (J2SDK) untuk akses dan pengolahan
database. Database yang didukung oleh Java cukup banyak, seperti : MySQL,
Postgres, Oracle, B2, Access dan lain-lain.
JDBC berisi kumpulan
kelas-kelas dan interface yang ditulis dengan bahasa Java. JDBC dapat digunakan
untuk membangun koneksi ke data source, mengirim statement ke data source,
memproses hasil statement tersebut.
Connect MySql ke Java
Langkah-langkah untuk
melakukan koneksi Java dan MySQL:
1. Mengimpor package java.sql
Program Java yang menggunakan JDBC harus mengimpor
package java.sql, sehingga program dapat mengenali DriverManager, Connection
dan ResultSet.
Contoh mengimpor package java.sql sebagai berikut:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
|
Atau cukup dengan :
import java.sql.*;
Keterangan :
·
DriverManager
: memanggil driver JDBC ke memori, dan dapat juga digunakan untuk membuka
koneksi ke sumber data.
·
Connection
: mempresentasikan suatu koneksi dengan suatu data source, juga digunakan untuk
membuat objek Statement, PreparedStatement dan CallableStatement.
·
Statement
: mempresentasikan suatu perintah SQL,
dan dapat digunakan untuk menerima objek ResultSet.
·
PreparedStatement
: merupakan alternatif untuk objek Statement SQL yang telah terkompilasi awal.
·
CallableStatement
: mempresentasikan suatu stored procedure, dan dapat digunakan untuk
menjalankan stored procedures yang terkompilasi dalam suatu RDBMS yang mendukung
fasilitas tersebut.
·
ResultSet
: mempresentasikan sebuah hasil dari
database yang dihasilkan dari statemen SQL SELECT.
·
SQLException
: suatu class exception yang membungkus kesalahan (error) pengaksesan database.
2. Memanggil driver JDBC
Untuk koneksi dengan database yang digunakan pada
program java dengan JDBC, harus menggunakan driver. Driver merupakan library
atau API (Application Programming Interface). Masing-masing database
menggunakan driver yang berbeda.
Berikut ini tabel daftar nama driver dari beberapa
database server :
Database Driver
Nama Driver
JDBC-ODBC
sun.jdbc.odbc.JdbcOdbcDriver
MySQL
com.mysql.jdbc.Driver
PostgreSQL
org.postgresql.Driver
Microsoft SQL Server
com.microsoft.jdbc.sqlserver.SQLServerDriver
Oracle
oracle.jdbc.driver.OracleDriver
IM DB2
COM.ibm.db2.jdbc.app.DB2Driver
|
Contoh untuk koneksi ke MySql:
String url =
"jdbc:mysql://localhost:3306/db_mahasiswa";
try{
Class.forName("com.mysql.jdbc.Driver");
con =
DriverManager.getConnection(url,"root","");
}
catch(ClassNotFoundException ex) {
System.err.println("Driver Error");
System.exit();
}
catch(SQLException e){
System.out.println("Tidak berhasil koneksi");
}
}
|
3. Mendefinisikan URL untuk Koneksi Database
Setelah load driver sukses, Anda perlu
mendefinisikan URL lokasi dari database. Bentuk umum JDBC URL sebagai berikut:
jdbc:databaseserver://[hostname][,failoverhost…][:post]/[dbname][?param1=value1][¶m2=value2]…
Contoh :
String url =
"jdbc:mysql://localhost:3306//dbmahasiswa;
user=root&password=";
String url = "jdbc:odbc:dbmahasiswa";
|
4. Melakukan Koneksi Ke Database
Untuk melakukan koneksi ke database, Anda dapat
menggunakan metode getConnection dari kelas DriverManager. Ada beberapa
argument yang berbeda dari method getConnection() yang dipanggil dari
DriverManager, yaitu:
getConnection(String url, String User, String
password)
Pada method ini hanya memerlukan argument url,
username dan password.
Method ini secara langsung mendefinikan nilai URL,
username dan password.
Contoh:
try{
String url =
"jdbc:mysql://localhost:3306/db_mahasiswa";
String user = "root";
String password = "";
Connection conn =
DriverManager.getConnection(url,user,password);
System.out.println("Proses koneksi
berhasil");
} catch(SQLException sqle){
System.out.println("Proses koneksi
gagal");
}
|
5. Membuat Objek Statement
Proses query memerlukan objek Statement. Objek
Statement dapat dibuat dari objek Connection. Objek Statement diperlukan untuk
menjalankan perintah SQL dari program java ke database server dan mendapatkan
ResultSet.
Statement stmt = Connection.createStatement;
atau
Statement stmt;
...
stmt = Con.createStatement;
|
6. Melakukan Query atau Update
Untuk mengirim query dan mengeksekusi, mengunakan
metode executeQuery yang mengembalikan objek bertipe ResultSet. Method
executeQuery digunakan untuk Statement Select. Sedangkan method executeUpdate
untuk Statement Insert, Update dan Delete.
String qry = "select * from mahasiswa";
ResultSet rslt = Statement.executeQuery($qry);
atau
String insert="insert into mahasiswa values
('"+nim+"','"+nama+"','"+alamat+"')";
Statement stmt;
…..
stmt = con.createStatement;
stmt.executeUpdate(insert);
|
7. Memproses Hasil
Memproses hasil adalah memproses ResultSet, tipe
objek yang dikembalikan oleh metode executeQuery dari objek Statement. Dalam
memproses hasil, akan menggunakan objek ResultSet.
while(rslt.next()){
Out.println(rslt.getString(1)+”
“+rslt.getString(2);
}
|
Method rslt.next() pada penggalan program di atas
digunakan untuk menuju ke data berikutnya hingga akhir data. Method getString
diikuti nomor kolom (fields) digunakan untuk memproses data sebagai string yang
kemudian ditampilkan dengan metode out.println.
8. Menutup Koneksi
Sebelum menutup koneksi database, harus melepaskan
objek Statement terlebih dahulu.
Contoh:
Statement.close();
Connection.close();
|
9. Menambah penanganan error (error
handling)
Penggunaan penanganan kesalahan dalam program
sangat penting, karena jika proses salah ada instruksi yang dikerjakan atau
kita isi dengan pesan kesalahan. Misalnya saja penanganan kesalahan jika driver
jdbc tidak ditemukan.
Contoh:
try {
Class.forName("com.mysql.jdbc.Driver");
}
catch(java.lang.ClassNotFoundException e) {
System.err.print("ClassNotFoundException: ");
System.err.println(e.getMessage());
}
|