Camp0er Ad0ek Jadi 1

iBATIS – Part 1

Posted by: Glorious on: July 31, 2008

Untuk kesempatan ini, saya akan membahas tentang framework iBatis. Bagi sebagian orang mungkin topik yang saya angkat ini sudah usang atau basi, tapi bagi saya masih layak/menarik untuk dipelajari dan didalami. Selain itu, saya mempelajari iBatis dengan tujuan untuk membandingkan iBatis dengan persistence framework lainnya seperti Hibernate dan Java Persistence API (JPA).

So, apa yang dimaksud dengan iBatis?

iBatis merupakan sebuah persistence framework yang dapat digunakan untuk memetakan query SQL ke Plain Old Java Objects (POJOs). Class POJO berisi sejumlah variabel beserta method setter() dan getter(). Query SQL bersifat decoupled terhadap aplikasi yang dikembangkan, sebab ditempatkan pada file-file XML. Jadi, kita bebas mengganti query yang akan digunakan. Oleh karena iBatis menggunakan query SQL, bukannya menggunakan query language yang baru, maka iBatis lebih portable terhadap database yang berbeda jika dibandingkan dengan Hibernate yang menggunakan Hibernate Query Language (HQL).

Selain itu, penggunaan SQL di iBatis juga meyakinkan kita bahwa hasil query yang akan diperoleh merupakan hasil yang dinginkan. Jika menggunakan Hibernate Query Language (HQL), query yang kita tulis akan dikonversi lagi oleh converter engine, yang telah disediakan Hibernate, menjadi query SQL. Nah, query SQL hasil proses konversi ini yang menimbulkan keraguan walaupun mungkin Hibernate sudah men-generate query SQL dengan metode atau algoritma yang dapat diandalkan. Tetapi, tetap saja kita tidak benar-benar yakin akan hasil query yang dikembalikan.

Infrastruktur dan konfigurasi iBatis seperti apa?

iBatis mempunyai 2 macam file konfigurasi, yaitu :

  • File XML yang berisi deklarasi dari domain object seperti pemetaan nama kolom-kolom di tabel dengan pasangannya masing-masing di domain object atau class POJO. Selain itu, query-query SQL yang sekiranya akan digunakan dalam aplikasi dapat ditempatkan juga pada file ini atau dapat juga ditambahkan dalam proses development nantinya.

Contoh :

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”no”?>

<!DOCTYPE sqlMap PUBLIC “-//iBATIS.com//DTD SQL Map 2.0//EN”

“http://www.ibatis.com/dtd/sql-map-2.dtd”>

<sqlMap>

<typeAlias type=”com.goglo.ibatis.Item” alias=”item”/>

<resultMap class=”item” id=”result”>

<result property=”NItemId” column=”n_item_id”/>

<result property=”VNmItem” column=”v_nm_item”/>

<result property=”DCreate” column=”d_create”/>

</resultMap>

<select id=”getAllItems” resultMap=”result”>

select * from Item

</select>

</sqlMap>

  • File sentral yang berisi informasi lokasi dari masing-masing file konfigurasi yang pertama disebutkan di atas.

    Contoh :

<?xml version=”1.0″ encoding=”UTF-8″ ?>

<!DOCTYPE sqlMapConfig

PUBLIC “-//iBATIS.com//DTD SQL Map Config 2.0//EN”

“http://www.ibatis.com/dtd/sql-map-config-2.dtd”>

<sqlMapConfig>

<sqlMap resource=”Coba.xml” />

</sqlMapConfig>


Tags:

2 Responses to "iBATIS – Part 1"

kalo mau belajar ibatis dari basic ato pemula gimana ??

untuk perbandingan antara persistence framework-nya ..parameter – parameter apa saja yang diangkat,,untuk menjadi perbandingan antara persistence – persistence framework yang ada??

Leave a Reply

RSS zerioz[dot]com

  • IDE temanku yg aneh (2)
    IDE temanku yang aneh akhirnya bisa ak perbaiki deh. Hebat khan??? *narsis*.
  • IDE temanku yg aneh
    Ak lupa perbaiki IDE yang aneh punya temanku di kantor
  • Mimpi ato kenyataan nih…
    Hallo, teman2… mau share nih tentang mimpi. Ak tuh dari kecil sampe sekarang masih penasaran sama yang namanya mimpi. Kata orang sih, mimpi itu bunganya tidur, dan ada sebagian orang yang percaya bahwa mimpi bakal jadi kenyataan atau pertanda akan terjadi sesuatu di masa depan. Menurut ahlinya, mimpi itu sering terjadi pada saat kondisi tidur REM [...]

Blog Stats

  • 955 hits