Akses Database Menggunakan JDBC Mengenal JDBC adalah sebuah
Akses Database Menggunakan JDBC
Mengenal JDBC adalah sebuah nama dari sebuah produk yang ada dalam Java, atau yang dikenal sebagai Java Database Connectivity, seperti dokumentasi yang dikeluarkan oleh Sun Microsystem. JDBC API yaitu Application Programming Interface, yang menyediakan akses data secara universal dan independent.
Cara Kerja JDBC Mengakses JDBC Driver ke dalam JVM. Membuat koneksi ke database yang direpresentasikan sebagai objek java. sql. Connection. Membuat objek java. sql. Statement yang akan digunakan untuk mengirimkan perintah SQL ke database. Menjalankan metode yang bersesuaian dari objek java. sql. Statement, seperti execute. Query() untuk membaca atau execute. Update() untuk menulis ke tabel.
Kelas untuk Mengakses Database Java menyiapkan paket khusus untuk menyimpan kelas-kelas yang terlibat dalam operasi akses database, yaitu dalam paket java. sql. Ada beberapa tahapan agar bisa melakukan operasi ke dalam database, antara lain : - pengenalan driver, - pembuatan koneksi/hubungan, statement/perintah SQL baru, - operasi baca dengan excecute. Query - operasi tulis dengan execute. Update(). Setiap tahapan dan pekerjaan yang berbeda-beda tersebut dilakukan oleh kelas yang berbeda, mulai dari Driver. Manager, Connection, Statement, Prepared. Statement, Resulset.
Driver. Manager adalah kelas untuk manajemen driver, untuk bisa mengakses database diperlukan sebuah driver JDBC. Untuk memastikan sebuah driver sudah terpasang atau belum, dapat digunakan objek Class untuk mengidentifikasinya
Objek Class untuk identifikasi driver try { Class. for. Name("com. mysql. jdbc. Driver"); System. out. println("jdbc. Driver : OK"); } catch(Class. Not. Found. Exception e) { System. out. println("Kelas: jdbc. Driver tidak ada"); }
Objek Driver. Manager ini bisa menghasilkan sebuah koneksi melalui metode get. Connection(), dengan menyertakan URL sebagai parameternya. Adapun penulisannya menggunakan titik dua (: ), seperti berikut : jdbc: mysql: //localhost/dbakademik? user=root&password=1234 Berikut ini penjelasannya. - jdbc: mysql adalah nama drivernya. - localhost adalah nama hostname (komputer address). - dbakademik adalah nama databasenya. - root adalah nama account user My. SQL. - 1234 adalah password dari account My. SQL tersebut.
Connection Kelas Connection adalah kelas yang menyimpan sebuah koneksi atau hubungan yang telah dilakukan oleh Driver. Manager. . . try { Class. for. Name("org. gjt. mm. mysql. Driver"); n er. get. Connection(db. Url, uname, pword); } Instance conn tersebut menyimpan sebuah koneksi ke database“dbakademik”, dengan komputer localhost (komputer lokal).
Statement Kelas ini digunakan untuk mengirimkan statement SQL ke database, tanpa penggunaan parameter. Seperti contoh berikut: try { Connection conn=Driver. Manager. get. Connection(“jdbc: mysql: //localhost/dbakademik” + “user=root&password=1234”); Statement st = conn. create. Statement(); Result. Set rs = st. execute. Query("Select * from datamhs"); } Instance st tersebut membuat sebuah statement baca, yaitu “Select * from datamhs”, melalui metode execute. Query yang dimilikinya. Selain itu, Statement tersebut juga bisa melakukan operasi baca dengan metode execute. Update() yang juga dimiliki oleh kelas ini.
Prepared. Statement Kelas ini digunakan untuk mengirimkan statement SQL ke database, yang disertai dengan penggunaan parameter seperti contoh : try { Class. for. Name ("org. gjt. mm. mysql. Driver"); conn = Driver. Manager. get. Connection (db. Url, uname, pword); JOption. Pane. show. Message. Dialog(null, "Koneksi ke Database dbakademik OK!!!"); String sql = "INSERT INTO datamhs (NIM, Nama, Alamat) VALUES('201501', 'Ilham Putra', 'Kuningan')"; Prepared. Statement ps = conn. prepare. Statement(sql); ps. execute. Update(); } Instance prepare. Statement tersebut membuat sebuah statement tulis, yaitu “insert into datamhs (NIM, Nama, Alamat)”, dan dijalankan melalui metode execute. Update() yang dimiliki oleh kelas ini. Sehingga contoh di atas dapat disimpulkan NIM=” 201501”, Nama=”Ilham Putra”, Alamat=”Kuningan”.
Result. Set Kelas yang menyimpan dataset (sekumpulan data) dari hasil statement query “SELECT”. Seperti contoh berikut ini : try { Connection conn=Driver. Manager. get. Connection( “jdbc: mysql: //localhost/dbakademik” +“user=root&password=1234”); Statement st = conn. create. Statement(); Result. Set rs = st. execute. Query("Select * from datamhs"); while (rs. next()) { System. out. println(“NIM : "+ rs. get. String(“NIM")); }} Instance rs, akan menyimpan hasil query yang bisa diakses dengan cara memanggil metode getter untuk setiap jenis datanya. Misalnya get. String() adalah untuk mendapat nilai string, diikuti nama fieldnya. Sedangkan untuk membaca record berikutnya bisa dilakukan dengan metode next().
Latihan membuat database Buat database melalui My. SQL dengan nama dbakademik Setting PATH dengan C: Program FilesJavajdk 1. 5. 0bin; C: Program FilesJavajre 1. 5. 0lib; C: Program FilesJavajdk 1. 5. 0lib;
Membuat Koneksi import java. sql. *; import javax. swing. *; class koneksijdbc { public static void main(String[] data) { Connection conn = null; String uname = "root"; String pword = "1234"; String db. Url = "jdbc: mysql: //localhost/dbakademik"; try { Class. for. Name("org. gjt. mm. mysql. Driver"); conn = Driver. Manager. get. Connection(db. Url, uname, pword);
Membuat Koneksi JOption. Pane. show. Message. Dialog(null, “Sudah terkoneksi ke Database MYSQL!!!"); } catch(Exception e){ JOption. Pane. show. Message. Dialog(null, “Koneksi ERROR"); } finally { System. exit(0); } } }
Untuk memasang driver My. SQL tersebut, klik kanan project Properties, sehingga muncul jendela Project Properties Pada kotak Categories. Selanjutnya di sebelah kanan tekan tombol Add Library… (pada tab Compile), sehingga muncul jendela Add Library. Pilih My. SQL JDBC Driver, tekan Add Library, kemudian tekan OK pada jendela Properties.
Project Properties
Input Data pada Tabel datamhs import java. sql. *; import javax. swing. *; public class datamhsjdbc { public static void main(String[] args) { Connection conn = null; String uname = "root"; String pword = "1234"; String db. Url = "jdbc: mysql: //localhost/dbakademik"; try { Class. for. Name ("org. gjt. mm. mysql. Driver"); conn = Driver. Manager. get. Connection (db. Url, uname, pword);
Input Data pada Tabel datamhs JOption. Pane. show. Message. Dialog(null, "Koneksi ke Database dbakademik OK!!!"); String sql = "INSERT INTO datamhs (NIM, Nama, Alamat) VALUES('201501', 'Ilham Putra', 'Kuningan')"; Prepared. Statement ps = conn. prepare. Statement(sql); ps. execute. Update(); JOption. Pane. show. Message. Dialog(null, "Data baru sudah diinputkan. . . "); conn. close(); } catch (Exception e){ JOption. Pane. show. Message. Dialog(null, e); } finally { System. exit(0); } } }
- Slides: 18