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

: )

12 thoughts on “ORM pada Java

  1. artikelnya bagus…

    tapi ngomong2, gambar “ORM pada Java” nya ngambil darimana yah???

  2. mas, dari segi kecepatan server antara pake ORM dan tidak bagusan mana? konsep ORM sama gak dengan konsep ADO di dunia windows?

  3. @ 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 comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.