ORM pada Java

it’s times like these you learn to live again
it’s times like these you give and give again
it’s times like these you learn to love again
it’s times like these time and time again
– Time Like These, Foo Fighter

Hai temen tmen, ketemu lagi deh setelah sekian lama tidak menulis. There’s lot of stories i want to share, tapi untuk kali ini saya akan berbagi ilmu dengan temen temen sekalian. Still about Java, dan yang kita bahas kli ini adalah Object Relationship Mapping.

Apa sih object relationship  mapping itu ?. ORM menurut saya adalah sebuah teknologi yang menjembatani antara paradigma pemrograman berorientasi objek dengan  database relational. Misal kita membuat program java yang  melakukan koneksi pada database MySql. Kita akan mengalami apa yang dinamakan dengan Impedance Mismatch. Salah satu gejalanya adalah bertebarannya query SQl didalam source code Java. Hal ini merepotkan karena  SQL sangat berbeda dengan JAVA. Pada saat melakukan parsing variabel dari database, set up koneksi, dan operasi CRUD (Create Retrieve Update Delete)  kerepotan karena penggunaan dua bahasa yang berbeda  akan terasa. Belum lagi pengaruhnya terhadap performance dan maintanibility.

ORM pada Java

ORM berusaha memecahkan masalah yang terjadi dengan melakukan moderasi berupa pemetaan database ke dalam objek pemorgaman. Karena Java merupakan bahasa pemorgraman yang OOP banget, ORM populer disini. Berikut ini adalah contoh source code Non ORM


String host = "localhost";
String db = "kiki";
String user = "root";
String pass = "";
String driver = "com.mysql.jdbc.Driver";
String koneksi = "";

koneksi = "jdbc:mysql://"  + host + ":3306/" + db + "?user=" + user +"&password=" + pass;

Class.forName(driver).newInstance();
Connection con = DriverManager.getConnection(koneksi);
Statement stmt = con.createStatement();

String ReqUser =  request.getParameter("username");
String ReqPass = request.getParameter("password");
String QUERY_INSERT = "INSERT INTO Mahasiswa VALUES (“ +ReqUser+ “,” +ReqPass+” )””

Dan ini  adalah  contoh source code menggunakan ORM hibernate. Kedua duanya sama sama melakukan operasi insert data.


public void tambahMhs (){

Mahasiswa ophex = new Mahasiswa();
ophex.setNRP(1);
ophex.setNama("ophex");
ophex.setPassword("mbuh");

HibernateUtil
   .getSessionFactory()
     .getCurrentSession().save(ophex);

   }

Dapat kita lihat perbedaannya, dengan menggunakan ORM operasi koneksi database dapat lebih mudah dimanage. Tentunya kodenya jadi lebih mudah dibaca. 🙂

Metode yang paling umum dari ORM adalah memetakan Tabel atau query kedalam class Java atau POJO atau Java Beans.  Deskripsi lengkap POJO bisa dilihat disini , dari saya POJO adalah class java yang hanya berisi variabel dan setter getter tanpa ada method proses lainnya.

POJO

POJO : Plain Old Java Object

Oke , bersambung ke postingan selanjutnya ya.

Tetep semangat temen temen

: )

Advertisements

12 thoughts on “ORM pada Java

  1. @ tukang Ketik

    heheh kopas mas…

    @ kucrit

    klo masalah sya belum pernah membuktikan sendiri seh mas…
    tapi menurut beberapa temen…

    pake ORM bikin aplikasi jadi lambat..

    entah seberapa lambat..

    klo ADO saya belum pernah coba mas…

    🙂

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s