1 / 55

Java Database Connectivity dan Studi Kasus Online BookShop

Java Database Connectivity dan Studi Kasus Online BookShop. Pertemuan 4-6. TIB13 – Pemrograman Java 2 – 4-6. Materi. MyODBC MySQL Connector/J Driver Connection Statement ResultSet PrepareStatement Advanced ResultSet Penerapan Operasi CRUD

grady-tyler
Download Presentation

Java Database Connectivity dan Studi Kasus Online BookShop

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Java Database Connectivity danStudiKasus Online BookShop Pertemuan 4-6 TIB13 – Pemrograman Java 2 – 4-6

  2. Materi • MyODBC • MySQL Connector/J • Driver • Connection • Statement • ResultSet • PrepareStatement • Advanced ResultSet • Penerapan Operasi CRUD • Studi kasus Online BookShop

  3. Tujuan Instruksional Khusus • Mahasiswadapatmembangunkoneksiaplikasi Java dengansumber data yang digunakanuntukmelakukanoperasi CRUD.

  4. Java Database Connectivity • JDBC (Java Database Connectivity) merupakan library yang digunakan untuk mengkoneksikan program Java dengan DBMS (Database Management System). • Melalui JDBC Anda dapat mengakses data-data pada DBMS seperti MySQL, Oracle, Microsoft ODBC dan DBMS lainnya. • Pembahasan pada materi ini menggunakan DBMS MySQL.

  5. MyODBC • Connector/ODBC is a standardized database driver Windows, Linux, Mac OS X, and Unix platforms. • MyODBC merupakan driver untuk menghubungkan atau sebagai jembatan/penerjemah antara aplikasi dengan database engine (MySQL), sehingga aplikasi tersebut dapat mengakses sebuah database. • Dapat di download pada URL : http://www.mysql.com/downloads/connector/odbc/

  6. MySQL Connector/J • Standardized database driver for Java platforms and development. • Untuk menghubungkan antara Java dan MySQL membutuhkan sebuah library yang bernama MySQLConnector/J. • Dapat di download pada URL : http://www.mysql.com/downloads/connector/j/

  7. MySQL Connector/J • Untuk memudahkan pengembangan aplikasi-aplikasi Java, sebaiknya menggunakan IDE untuk Java seperti NetBeans atau Eclipse. • Untukmemasukkan library MySQLConnector/J kesebuah project padaNetBeans, adalahdengancaramengklikkananpadapaket Libraries, lalupilih Add Library …

  8. MySQL Connector/J PilihMySQL JDBC Driver Lalutekantombol Add Library

  9. MySQL Connector/J • Hasilnya sbb : Library MySQL JDBC Driver sudahditambahkan

  10. Driver • Untuk membuat koneksi dari Java ke MySQL memerlukan class yang bernama Driver. • Setiap connector (yang digunakan MySQLConnectorJava) memiliki Driver masing-masing yang selalu mengimplementasi class Driver yang terdapat pada paket “java.sql”. • Untuk mengecek keberadaan Driver dalam MySQLConnectorJava gunakan perintah seperti ini : Class.forName(“nama driver").newInstance();

  11. Driver • Berikut adalah program untuk mendeteksi Driver yang digunakan : OUTPUT

  12. Connection • Untuk menghubungkan Java dan MySQL Anda harus membuat koneksi melalui class Connection yang terdapat dalam paket “java.sql”. • Dan untuk membuat koneksi, perlu diketahui nama host, port, nama database, username dan password yang akan digunakan untuk koneksi MySQL. • Cara membuat koneksi : Connection koneksi = DriverManager.getConnection( "jdbc:mysql://host:port/database", "username", "password");

  13. Statement • Statement digunakan untuk mengeksekusi perintah-perintah SQL seperti seperti INSERT, UPDATE, SELECT dan DELETE. • Statement merupakan class yang terdapat dalam paket “java.sql” . • Untuk membuat Statement Anda dapat melakukan koneksi terlebih dahulu menggunakan class Connection : Connection kon = DriverManager.getConnection(.....); Statement statement = kon.createStatement();

  14. OUTPUT

  15. Statement • Untuk lebih memahami penggunaan Statement dalam program maka siapkan terlebih dahulu tabel dan form seperti berikut ini : • Catatan : DBMS yang digunakan adalah MySQL dan IDE yang digunakan adalah NetBeans 7.0 tUser txtUserID txtPassword cmdSimpan cmdHapus cmdClose cmdUpdate

  16. Statement - Insert • Melalui Statement Anda dapat melakukan proses Insert. Lihat potongan kode program berikut ini:

  17. Statement - Delete • Melalui Statement Anda dapat melakukan proses Delete. Lihat potongan kode program berikut ini:

  18. Statement - Update • Melalui Statement Anda dapat melakukan proses Update. Lihat potongan kode program berikut ini:

  19. ResultSet • SELECT merupakan perintah yang menghasilkan kumpulan data dalam tabel yang ada dalam database. • Untuk mendapatkannya maka dibutuhkan bantuan class yang bernama ResultSet yang terdapat pada paket java.sql. • Untuk mendapatkan record dalam ResultSet Anda dapat menggunakan metode next() untuk mengecek apakah ada record lagi setelah record ini dan prev() untuk mengecek apakah ada record sebelum record yang saat ini terseleksi.

  20. ResultSet • Perhatikan potongan kode berikut: Koneksi objKoneksi = new Koneksi(); Connection kon = objKoneksi.bukaKoneksi(); Statement stat = kon.createStatement(); String query = "Select * from tUser"; ResultSet data = stat.executeQuery(query); boolean ketemu = false; while(data.next()) { //Proses }

  21. PrepareStatement • Selain Statement dalam JDBC kita juga mengenal PrepareStatement yang gunanya hampir sama dengan Statement, namun perbedaannya PrepareStatement memiliki fasilitas untuk mempermudah proses INSERT, UPDATE, DELETE. Untuk membuat PrepareStatement kita bisa membuatnya lewat Connection : Connection koneksi = DriverManager.getConnection(...); PreparedStatement prepare = koneksi.prepareStatement("PERINTAH SQL...");

  22. PrepareStatement (lanjutan) • Berbeda dengan Statement, pada PrepareStatement kita harus menuliskan perintah SQL dengan ‘?’ jika kita akan mengubah data tersebut : Connection koneksi = DriverManager.getConnection(...); PreparedStatement prepare = koneksi .prepareStatement(" INSERT INTO tUser " + " (UserID, Password) VALUES (?, ?)");

  23. PrepareStatement (lanjutan) • Selanjutnya Anda dapat mengubahnya dengan menset tanda ‘?’ dalam perintah tersebut sesuai dengan tipe datanya menggunakan metode set[TipeData](int index, TipeData nilai). • Kemudian gunakan metode executeUpdate() untuk mengeksekusi seluruh perintahnya. • Contoh tabel tPenulis:

  24. Insert Data

  25. Update Data

  26. Delete Data

  27. View Data

  28. Advanced ResultSet • Selain Statement dan PrepareStatement, ternyata ResultSet juga bisa kita gunakan untuk menambah data, namun untuk membuat sebuah ResultSet yang dapat mengubah data kita harus membuat Statement yang berbeda dari Biasanya : Connection koneksi = DriverManager.getConnection(...); Statement statement = koneksi.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet result = statement.executeQuery("SELECT ...");

  29. Advanced ResultSet (lanjutan) • Sebelum menambahkan data Anda perlu memanggil metode moveToInsertRow(), dan untuk menambah atau mengubah data Anda bisa menggunakan metode update[TipeData](int indexAtribut, TipeData nilai) dan setelah proses berakhir gunakan metode insertRow() untuk memasukkan data yang tadi dimasukkan.

  30. Insert Data

  31. Update Data • Berbeda dengan Statement dan PrepareStatement, dalam ResultSet, Anda harus tahu lokasi baris / record yang akan kita ubah. • Untuk mengubah data Anda harus menentukan dulu record yang akan kita ubah dengan metode absolute(int indexRecord) milik ResultSet. • Seperti proses INSERT untuk proses UPDATE Anda juga menggunakan metode update[TipeData](int indexAtribut, TipeData nilai) dan harus diakhiri dengan metode updateRow().

  32. Update Data

  33. Delete Data

  34. Studi Kasus BookShop • Buat database dengan nama dbBookShop • Desain tabel-tabel seperti berikut : • Tabel untuk menampung kategori buku : tKategori • Tabel Penulis Buku : tBuku • Tabel untuk Penerbit Buku : tPenerbit • Tabel Buku : tBuku • Tabel Order Buku : tOrder • Tabel Order Detail : tOrdetail

  35. Studi Kasus BookShop • Tabel tKategori : • Tabel tPenulis :

  36. Studi Kasus BookShop • Tabel tPenerbit : • Tabel tBuku :

  37. Studi Kasus BookShop • Tabel tOrder : • Tabel tOrdetail :

  38. Desain User Interface • Desain User Interfase sesuai dengan tabel-tabel di atas • Sebagai contoh desain UI untuk menginputkan data Penulis Buku seperti berikut ini : JTextField JRadioButton JTextArea JButton

  39. Variable Name txtKode txtNama txtEmail male female txtAlamat cmdSimpan cmdUpdate cmdHapus cmdClose

  40. Agar lebihjelasperhatikanpadabagian Member View (NetBeans) yang menunjukkan variable name darimasing-masingkomponen UI

  41. Methods Method-method dan Handler Object pada class FormPenulis

  42. Cara kerja Program Form Pertama kali dijalankan Setelah data diinputkan

  43. Cara kerja Program SetelahmenekantombolSimpan Kembalisepertisemulasetelahmenekantombol OK padakotak dialog Message

  44. Data tersimpanketabeltPenulis Catatan: Untukmenyederhanakan program makaalamat, kotadankode pos digabungpada field alamat

  45. KodeProgram – Simpan Data

  46. KodeProgram – Update Data

  47. KodeProgram – Hapus Data

  48. KodeProgram – Update Data

  49. KodeProgram – Cari Data

More Related