I.
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.
II.
Koneksi
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.*;
Penjelasan:
- 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());
}
Oleh kelompok 8 (Database_Java)
1. Siti Hartina (200951017)
2. Ulya Farida (200951047)
3. Kartika Endah Sari (200951131)
1. Siti Hartina (200951017)
2. Ulya Farida (200951047)
3. Kartika Endah Sari (200951131)
2 komentar:
Terimakasih ya.. sangat bermanfaat.. :)
sangat bermanfaat..
Posting Komentar