GUNADARMA UNIVERSITY LIBRARY : http://library.gunadarma.ac.id 1 UJICOBA TEKNOLOGI PEMETAAN OBJEK RELASIONAL PADA APLIKASI PEMBELIAN OBAT DENGAN MENGGUNAKAN BAHASA PEMROGRAMAN JAVA DAN FRAMEWORK HIBERNATE Agung Prasetyo (50406044) Abstract—ABSTRAKSI Agung Prasetyo, 50406044 UJICOBA TEKNOLOGI PEMETAAN OBJEK RELASIONAL PADA APLIKASI PEMBELIAN OBAT DENGAN MENGGUNAKAN BAHASA PEMROGRAMAN JAVA DAN FRAMEWORK HIBERNATE PI, Jurusan Teknik Informatika, Fakultas Teknologi Industri Universitas Gunadarma, 2009 Kata Kunci : Aplikasi, Database, ORM ( xiii + 119 + Lampiran ) Hampir semua aplikasi bisnis menggunakan database. Konsep database relasional sudah populer jauh sebelum konsep object-oriented digunakan orang. Dalam beberapa waktu yang lalu, pengembangan aplikasi bisnis khususnya berbasis java yang mana merupakan salah satu bahasa pemrograman berbasis objek, para developer harus melakukan penulisan manual perintah SQL agar aplikasinya dapat berinteraksi dengan database. Disamping itu proses pengaturan koneksi antara aplikasi dengan DBMS harus dilakukan secara manual melalui kode program, aplikasi besar dengan banyak koneksi biasanya melakukan optimisasi terhadap proses ini untuk efisiensi sumber daya komputer. Namun dalam perkembangannya saat ini, masalahmasalah tersebut dapat diatasi oleh suatu teknologi yang bernama Object Relational Mapping (ORM) atau Pemetaan Objek Relasional. Teknologi ini menjembatani konsep database relasional dengan konsep objectoriented dimana dalam melakukan pendefinisian entitasentitas dalam suatu database prosesnya dilakukan melalui konsep object-oriented. Jadi dapat dikatakan pula bahwa ORM adalah suatu teknik pemetaan data yang direpresentasikan dari model objek ke model data relasional dengan skema berbasis SQL. Dalam penerapan teknologi ORM ini kedalam aplikasi maka digunakan framework yang bernama Hibernate. Daftar Pustaka (2004 - 2007) iv I. Chapter 1 1. PENDAHULUAN 1.1. Latar Belakang Masalah Sejalan dengan perkembangan dunia teknologi informasi pada satu dekade terakhir ini dimana terjadi peningkatan penggunaan perangkat lunak dalam berbagai aktifitas manusia, seperti dalam bidang perdagangan, perkantoran, pendidikan serta bidang-bidang lainnya. Maka perangkat lunak yang digunakan akan dituntut memiliki kemampuan yang lengkap dimana sanggup membantu menyelesaikan masalah dalam bidangnya. Salah satu bentuk aktifitas manusia yang membutuhkan perangkat lunak sebagai sarana dalam penyelesaian masalahnya adalah aplikasi pembelian khususnya dalam ruang lingkup apotik, dimana sebelum penggunaan komputer, proses transaksi pembelian dilakukan secara manual dengan menggunakan laporan tertulis dimana dalam suatu proses pembelian kita akan melibatkan beberapa data seperti data barang dan data transaksi. Jika proses tersebut dilakukan secara manual pada data yang berjumlah banyak, tentu hal ini akan merugikan dalam hal waktu pada proses transaksi pembeliannya, serta jika proses transaksi pembelian dilakukan secara manual maka kemungkinan terjadi kesalahan dalam proses pengolahan data akan semakin besar, karena prosesnya dilakukan secara tertulis oleh manusia. Dengan semakin berkembangnya teknologi informasi, maka salah satu bentuk penggunaan perangkat lunak adalah dalam bidang transaksi pembelian, dengan menggunakan perangkat lunak khususnya aplikasi pembelian maka proses transaksi pembelian tersebut dapat dilakukan secara otomatis dimana akan lebih efektif dan efisien dengan meminimalisir waktu dan kesalahan yang mungkin terjadi. Data-data yang dibutuhkan dalam proses transaksi pembelian akan diolah melalui aplikasi pada komputer yang telah terintegrasi dengan sebuah database. Sehingga proses pengolahan data pada transaksi pembelian dapat dilakukan secara mudah dan memakan waktu yang sedikit. Namun dalam perkembangan teknologi informasi yang begitu cepat, tentu akan memiliki sisi negatif yang kemungkinan akan mempengaruhi terhadap kinerja aplikasi yang sudah ada. Dampak negatif 1 2 tersebut antara lain adalah virus yang umumnya menyerang aplikasi executable yang berjalan pada sistem operasi Windows. Serta melihat perkembangan perangkat lunak saat ini maka suatu aplikasi akan dituntut memiliki tampilan....... For further detail, please visit UG Library (http://library.gunadarma.ac.id) II. Chapter 2 2. LANDASAN TEORI 2.1. Pengantar Java Java dikembangkan oleh SUN Microsystem pada Agustus 1991, sekelompok insinyur SUN dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Dikarenakan perangkat tersebut tidak memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang liat. Juga karena manufaktur-manufaktur berbeda memilih processor yang berbeda pula, maka bahasa harus bebas dari manufaktur manapun. Proyek diberi nama kode Green. Kebutuhan untuk fleksibilitas, kecil, liat dan kode yang netral terhadap platform mengantar tim 2 GUNADARMA UNIVERSITY LIBRARY : http://library.gunadarma.ac.id mempelajari implementasi Pascal yang pernah dicoba. Niklaus Wirth pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis. Mesin ini sering disebut dengan mesin maya (virtual machine). Kode ini kemudian dapat digunakan di sembarang mesin yang memiliki interpreter. Proyek Green menggunakan mesin maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin. Karena orangorang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek dan bukan prosedural. Mulanya bahasa yang diciptakan diberi nama Oak oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, kemudian SUN menggantinya dengan Java. Nama Java sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata Java yang mengandung arti asal bijih kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama Java. 5 6 Java merupakan bahasa pemograman berorientasi objek yang merupakan hasil perpaduan sifat dari sejumlah bahasa pemograman, yaitu C, C++, Object-C, SmallTalk dan Common LISP dan bersifat tidak bergantung pada platform atau portabilitas. Artinya Java dapat....... For further detail, please visit UG Library (http://library.gunadarma.ac.id) III. Chapter 3 3. PEMBAHASAN MASALAH Dalam penulisan ilmiah ini, penulis membuat sebuah aplikasi pembelian obat berbasis desktop yang dibuat dengan bahasa pemrograman JAVA dan menggunakan teknologi Object Relational Mapping melalui Hibernate sebagai frameworknya. Proses pembuatan aplikasi ini melalui beberapa tahapan dari pembuatan alur, pembuatan struktur, perancangan database (khususnya perancangan konseptual dan fisik), perancangan output, implementasi program dan spesifikasi perangkat keras. Pada bab ini akan dijelaskan tentang tahapan-tahapan dalam proses pembuatan aplikasi pembelian obat. 3.1. Pembuatan Alur Berikut ini adalah struktur yang menjelaskan tentang gambaran umum dari alur program yang akan digunakan pengguna, dimana dalam aplikasi ini tidak terdapat pengklasifikasian pengguna. Mulai 1 Login Menu File T T Valid Kelu ar Y Y Selesai 1 28 29 1 Menu Master 2 2 Master Obat 4 3 3 Input Tipe, nama, kemasan, harga, expire, produksi, keterangan dan kode, serta jumlah = 0 Tambah Obat Simpan T Y Batal 4 Y Simpan Tampilkan Tabel Obat 30 3 Pilih data obat yang ingin diedit dari tabel obat Edit Obat Update Y Simpan Tampilkan Tabel Obat Y Simpan Tampilkan Tabel Obat T Y Batal 4 3 Pilih data obat yang ingin dihapus dari tabel obat Hapus Obat Hapus T Y 4 Batal 3 Tentukan tipe keyword berdasar field-field tabel Tampilkan hasil pada Tabel Obat Masukkan nilai terhadap keyword Cari Obat 31 2 Master Supplier 6 5 5 Input kode, nama, kota, alamat, telp, hp, faks, website dan keterangan Tambah Supplier Simpan Y Simpan Tampilkan Tabel Supplier Y....... For further detail, please visit UG Library (http://library.gunadarma.ac.id) IV. Chapter 4 4. KESIMPULAN 4.1 Kesimpulan Setelah adanya proses ujicoba teknologi Object Relational Mapping (ORM) atau pemetaan objek relasional dalam aplikasi pembelian obat ini dapat disimpulkan, bahwa untuk membuat aplikasi berbasis Java yang menerapkan teknologi ini dengan framework Hibernate, maka akan melalui beberapa tahapan, antara lain : 1. Menambahkan library yang diperlukan aplikasi seperti driver database (mysqlconnector-5.1.6.jar dan ojdbc14.jar), HibernateJPA dan Spring 2.5, kedalam proyek aplikasi yang akan dibuat. 2. Membuat file konfigurasi (jdbc.properties) yang digunakan untuk koneksi terhadap RDBMS yang digunakan, dalam ujicoba ini RDBMS yang digunakan adalah MySQL Server 5.0.5A dan Oracle 10g XE 3. Membuat class-class model, yaitu class-class yang akan direpresentasikan menjadi tabel-tabel dalam database. 4. Memetakan class-class tersebut dalam file hibernate.cfg.xml serta mengkonfigurasi Hibernate. 5. Membuat file konfigurasi Spring, dalam hal ini appContext.xml, yang digunakan sebagai manajemen transaksi dan menghubungkan file jdbc.properties dengan hibernate.cfg.xml. Kemudian, setelah dilakukan pembuatan aplikasi dan ujicoba terhadap aplikasi tersebut kepada dua RDBMS yaitu MySQL dan Oracle, maka penulis dapat mengambil kesimpulan sebagai berikut: 1. Teknologi ORM, menjembatani konsep model relasional dengan konsep pemrograman berbasis objek. 2. Menghemat waktu, karena dengan melakukan pendekatan berbasis objek yaitu dengan membuat class-class maka sekaligus akan menciptakan tabel-tabel dalam database pada saat aplikasi pertama kali dijalankan. 119 120 3. Mengoptimalisasi sumber daya komputer yang digunakan, karena aplikasi menggunakan connection pooling. 4. Jika suatu saat terjadi pergantian vendor RDBMS, maka tidak perlu dilakukan pengubahan dan kompilasi ulang kode sumber aplikasi, melainkan cukup mengubah sedikit dari file-file konfigurasi. Dimana dalam penulisan ini diujicoba pada dua RDBMS yaitu MySQL dan Oracle. 5. Aplikasi yang dibuat memiliki portabilitas terhadap berbagai macam vendor RDBMS. Akan tetapi, walaupun penggunaan teknologi ORM ini memiliki beberapa keuntungan, namun dalam ujicoba ini ditemukan kekurangan, dalam hal ini masalah tipe data. Contohnya, jika kita mendefinisikan tipe data....... For further detail, please visit UG Library (http://library.gunadarma.ac.id) V. Chapter 5 ....... UJICOBA TEKNOLOGI PEMETAAN OBJEK RELASIONAL PADA APLIKASI PEMBELIAN OBAT DENGAN MENGGUNAKAN BAHASA PEMRO For further detail, please (http://library.gunadarma.ac.id) visit UG Library