Langsung ke konten utama

Class SQL dengan Java (bingung nich)

Tulisan ini saya buat saat sedang mengambil mata kuliah PBO II (pemrograman berbasis obyek), di saat ini diajarkan bagaimana cara menghubungkan Java dengan MySql. Sulit? Tentu bukan hal yang sulit, paling tidak bagiku (wuih sombong), ya emang kalau bilang scripting tidak ada yang sulit sih yang ada cuman nggak hafal, kalau sudah urusan logika, lah itu yang sulit.

Banyak temenku yang kebingungan mengikuti mata kuliah ini, sebenarnya bukan karena kesulitan tapi lebih karena tidak hafal script-nya dan juga tidak biasa mengimplementasikan program dalam Java. Coba kalau mata kuliahnya menggunakan Delphi atau VB, pasti lebih cepet dimengerti, tinggal drag & drop tambah sedikit konfigurasi ODBC, udah selesai.

Berawal dari itulah akhirnya saya mencoba membuat class khusus yang mengimplementasikan pengguanan java untuk komunikasi dengan MySql. Yang lebih mudah dihafal dan juga lebih mudah ditulis, mungkin juga lebih mudah untuk mengenalkan diri, karena termuat dalam package fahri.sikel.*.

Alurnya, pertama untuk konstruktor :

public Sikel(String nim){

........

}

public Sikel(String nim,String passwd){

........

}

public Sikel(String host,String user,String passwd,String db){

........

}

mengapa ada tiga overload constructor?

Untuk constructor pertama dan kedua adalah untuk yang tugas yang dikejakan di lab kampus karena hostnya sudah ditentukan jadi tidak perlu dikonfirmasi lagi. Dan lagi di lab sudah di-set antara username MySQL, dan database sama persis yaitu menggunakan NIM masing-masing mahasiswa, jadi cukup satu kali konfirmasi NIM sudah selesai.

Sedangkan constructor kedua adalah untuk mahasiswa yang suka privacy dan memberikan password pada username-nya (termasuk saya). Sedangkan yang ketiga, constructor yang lebih fleksibel buat mereka yang mengerjakan tugas di rumah, kos, komputer temen, dan barang pinjaman, lebih fleksibel tapi juga lebih ribet, yah bagaimana lagi, terserah aku dong, kalau protes buat aja sendiri.

void perintah(String sql){

...........

}

Udah ketahuan dari namanya, ini method untuk memasukkan SQL Command ke dalam Java, tapi terbatas untuk DML itupun masih dibatasi hanya untuk INSERT INTO, UPDATE, dan DELETE, untuk SELECT, nanti ada jatahnya sendiri. Caranya seperti biasa tho tinggal masukkan aja SQL Command ke dalam parameter jalankan, beres deh.

void tutup(){ .............. }

Lah yang ini lebih kentara lagi, method yang gunanya untuk memutuskan hubungan dengan Java, kalau mau koneksi lagi, ya buat object lagi lah yaw, kan fungsi connect-nya udah dimasukkan di constructor.

Ada satu method lagi rencananya mau kayak gini

String [] [] tampil(String tabel,int jmlField,String kondisi){

..............

}

Kenapa tipe kembaliannya berupa array? Kenapa parameternya aneh? Kenapa pake tipe kembalian, nggak langsung ditampilkan saja? Kenapa, kenapa, dan kenapa. Pertanyaan yang mudah tapi sulit untuk dijawab.

Sebenarnya mudah saja kalau membuat method yang langsung menampilkan dalam JTable, atau langsung dicetak dengan menggunakan Sysout (System.out.println). Tapi saya ingin membuat method tampil yang lebih dinamis dan fleksibel, sebenarnya lebih tepat kalau disebut method getData, tapi saya lebih suka menggunakan kata "tampil" karena lebih familiar di telinga temen-temen yang awam. Method ini hanya akan memasukkan isi dari database dalam sebuah array, kemudian terserah selera pengguna. Mau pake JTable boleh, Sysout juga boleh, bahkan kalau mau ditampilkan dulu di JTextField untuk keperluan konfirmasi update dan delete juga bisa.

Keputusan menggunakan array saya ambil karena class ini hanya ditujukan untuk membantu temen-temen yang kesulitan menghafalkan script koneksi Java untuk mata kuliah PBO II, dan saya yakin tidak mungkin ada mahasiswa yang menginputkan data sampai sekian banyak, paling menthok di hitungan dua puluhan. Kalaupun ada yang melebihi hitungan itu, berarti kemungkinan besar dia lebih pintar dan lebih ulet dari saya jadi saya persilahkan untuk membuat class sendiri, tidak perlu mencontek class sederhana ini.

Namun untuk membuat method yang terakhir ini saya mengalami kesulitan. Proyek Roro Jonggrang, pukul 00.35 saya mulai menulis class dengan menggunakan JCreator LE, sekitar pukul 00.56 method lain sudah jadi plus uji coba sukses, namun untuk method terakhir saya harus bekerja sampai pukul 01 lebih, saya pending untuk tidur dan dilanjutkan setelah sahur. Ternyata sampai 05.15 belum juga mendapat solusi yang baik. Sampai sekarang, masih males untuk mikir lagi, tetep saja terjebak dalam kesalahan yang sama, pada tipe kembalian yang tidak compatible dan SQL Command yang error terus. Mungkin temen yang lain bisa membantu saya menyelesaikan proyek ini, lumayan buat bantu temen yang kurang cepet menangkap materi kuliah.

Seusai prinsip enkapsulasi, listing lengkap tidak saya edarkan secara bebas yang pingin lihat skrip lengkapnya silahkan hubungi saya.

Komentar

Anonim mengatakan…
Saved as a favorite, I love your site!

My blog; new cellulite treatment
Anonim mengatakan…
Hello there, I do think your blog could possibly be having internet browser compatibility problems.
Whenever I take a look at your web site in Safari, it looks fine but when opening in Internet Explorer, it has some overlapping issues.
I simply wanted to provide you with a quick heads up!

Apart from that, fantastic blog!

my blog - cellulite treatment reviews
Anonim mengatakan…
Hi to all, the contents present at this web
site are actually awesome for people experience, well, keep up the good work
fellows.

Also visit my blog; new cellulite treatment

Postingan populer dari blog ini

ternyata melanggar SUMPAH ........

Pernah suatu ketika Abu Bakar Ash-Shidiq salah satu sahabat nabi yang paling hebat, mendapat tamu pada jam makan. Tuan rumah yang baik tentu saja tidak akan meninggalkan tamunya dalam keadaan lapar, maka beliau pun menyuruh putranya untuk menyiapkan makanan untuk para tamunya tersebut. Sementara beliau sendiri lebih suka makan bersama putrinya dan menantunya yaitu Siti (Sayyidatina) 'Aisyah dan Rasulullah SAW. Akhirnya untuk urusan perjamuan makan diserahkan kepada putranya, sedangkan beliau pergi sejenak untuk makan bersama Rasulullah. Setelah makanan dihidangkan dan tamu dipersilahkan untuk makan, para tamu malah bertanya tentang Abu Bakar, kemudian putranya menjawab bahwa Abu Bakar saat itu sedang pergi ke rumah Rasulullah untuk makan, dan menyerahkan tanggung jawab perjamuan kepada putranya. Langsung saja para tamu tadi menolak untuk menyantap makanan yang telah dihidangkan kecuali sang tuan rumah (Abu Bakar) mau menyantapnya terlebih dahulu. Setelah selesai makan, Abu Bakar pu...

Antara PHP, JSP dan ASP

PHP vs JSP vs ASP Tepat sekali ketiganya adalah bahasa pemrograman scripting serverside untuk aplikasi berbasis web, saya rasa tidak perlu menjelaskan lebih jauh tentang definisinya, ada banyak sekali artikel di internet yang membahas tentang hal tersebut. Saya hanya ingin membandingkan antara ketiga bahasa pemrograman tersebut. Tapi asal tahu saja, sekarang saya hanya mendalami PHP, sedangkan yang lain hanya saya dengar dan baca dari beberapa artikel. Mengapa memilih PHP? PHP merupakan bahasa scripting yang powerfull dan juga sangat sederhana, mudah dipelajari. Apalagi saya pertama kali belajar bahasa pemrograman menggunakan C, jadi bisa dikatakan sangat cocok sekali. Sebenarnya yang paling menarik dari PHP (menurut saya) adalah syntaxnya yang sangat simpel dan juga koneksi ke database MySQL yang cukup mudah. Kelebihan lain tentu karena harganya yang gratis, sehingga kita tidak perlu terikat lisensi apapun untuk membuat aplikasi berbasis web dengan PHP. Dan selanjutnya adalah dukunga...

Programmer Produktif dengan Framework

Pernah mendengar Zend Framework, Prado, Google Web Toolkit (GWT), Drupal, atau DotNetNuke? Semua itu adalah jenis-jenis framework untuk developing web. Apa itu Framework? Nah inilah kesalahan saya, kenapa tadi lupa mencari di internet definisi yang tepat tentang framework, ya sudah karena lupa saya mencoba mendefinisikan secara sederhana dan semampu saya. Mungkin saja definisi yang saya buat malah lebih baik dan lebih menggambarkan framework, He hehehehe. Framework terjemahan mudahnya adalah kerangka kerja, sedangkan dalam dunia pemrograman framework adalah bentuk kumpulan perintah suatu bahasa pemrograman yang telah diatur sedemikian rupa menjadi beberapa modul-modul untuk mempermudah pemrograman. Berbeda dengan CMS (content management system), framework bisa dibilang adalah komponen setengah matang yang memang disiapkan agar bisa digunakan untuk membentuk kerangka pemrograman secara lebih mudah. Sedangkan CMS atau templating, biasanya telah menyediakan layout dan tampilan administras...