Life is about choice

Do your best or nothing, No change no future, No pain no gain…

Membuat Sistem Informasi Alumni di Handphone dengan J2ME (Record Management System- RMS)

Posted by Niyamabrata pada Agustus 29, 2009

Target : adapun target dari project baru ini adalah membuat sebuah Sistem informasi berupa database sederhana untuk menampilkan informasi dari nama-nama alumni di handphone(beserta properties lainnya seperti asalnya , korps dll) dengan menggunakan bahasa pemrograman Java yakni J2ME(Java untuk aplikasi micro edition) dimana database yang digunakan dikelola dengan menggunakan Record Management System (RMS).

Yang dibutuhkan :

  1. jdk-6u16-windows-i586(cari di websitenya java)
  2. netbeans-6.7.1-ml-windows
  3. Ebooks: Java J2ME (The Complete Reference McGrawHill Osborne)
  4. Camilan dan kopi yang banyak…

Record Management System(RMS)

RMS adalah API(Application Programming Interface) yang digunakan untuk menyimpan dan memanipulasi data pada device yang biasa melakukan komputasi kecil dengan memori yang sangat terbatas seperti handphone, smart phone dll dengan menggunakan aplikasi J2ME.

RMS menyediakan sebuah sistem file yang memungkinkan menyimpan dan mempertahankan data pada device. RMS merupakan kombinasi antara sistem file dan database management system yang memungkinkan untuk menyimpan data pada kolom dan baris seperti menyimpan data pada tabel sebuah database. Dan kita bisa menggunakan RMS untuk melakukan fungsi-fungsi seperti Database Management System (DBMS)T. Di mana kita bisa melakukan insert record, read record, search record tertentu, dan sorting record yang tersimpan oleh RMS.

Meskipun RMS menyediakan fungsi-fungsi seperti database akan tetapi RMS adalah bukan database relasioanal, oleh karena itu kita tidak bisa menggunakan SQL(Structured Query Language) untuk memanipulasi data. Sebagai gantinya akan digunakan RMS application programming interface dan enumeration application programming. interface untuk sorting, searcing, dan memanipulasi data-data yang sedang tersimpan digunakan (data persistence).

The Record Store

RMS menyimpan informasi pada Record Store. Record Store adalah seperti flat file yang digunakan untuk penyimpanan data pada file system tradisional atau seperti tabel pada sebuah database. Record store terdiri dari informasi yang memiliki sebuah nama seperti file system atau tablel database. Record store adalah sebuah kumpulan dari record-record yang diatur sesuai dengan baris(records) dan kolom(fields). Kolom terdiri dari data seperti Nama depan, sedangkan baris terdiri dari Nama depan, Nama tengah, Nama belakang, Alamat, Kode pos, dll. RMS secara otomatis memberikan integer yg bersifat unik untuk mengidentifikasi baris pada Record store.

Record ID terdapat pada kolom  di dalam Record store. Record ID menentukan primary key dari Record storeThe record ID is in its own column within the record store. Primary key pada Record store sama seperti primary key pada tabel dari sebuah database yang biasa kita pelajari yang mana secara unik digunakan untuk identifikasi dari masing-masing record dari tabel. Meskipun secara konsep kita bisa memandang Record store sebagai kumpulan baris dan kolom, secara teknik hanya terdapat dua kolom. Kolom pertama adalah record ID sedangkan kolom kedua adalah sebuah array dari bytes yang terdiri dari data persistent.

Lingkup dari Record Store

Kita dapat membuat multiple record store sesuai dengan yang dibutuhkan oleh MIDlet(A MIDlet adalah sebuah aplikasi yang ditulis untuk MIDP-Mobile Information Device Profile, aplikasi MIDlet adalah sub kelas dari  kelas  javax.microedition.midlet.MIDlet yang didefinisikan oleh MIDP) yang kita bikin  selama masing-masing dari record store yang kita buat memiliki nama yang unik. Nama dari sebuah record store minimal adalah satu karakter dan maksimal adalah tidak lebih dari 32 karakter. Karakter yang digunakan adalah Unicode dan nama adalah case sensitive. Record store dapat di share diantara MIDlet-MIDlet pada suite(MIDlet dalam satu paket) yg sama.. Sebagai contoh MIDlet A  mengambil data pelanggan dari Sales. MIDlet B menampilkan data pelanggan yang diambil oleh MIDlet A. MIDlet B dapat mengakses data pelanggan jika MIDlet A dan MIDlet B berada dalam satu suite. Dan berlaku kebalikannya, dimana MIDlet B tidak akan bisa mengakses data pelanggan jika MIDlet A dan MIDlet B tidak terdapat dalam satu suite.

Clip

Membuat Record Store

Metoda openRecordStore() dipanggil untuk membuat record store yang baru dan untuk membuka record store yang sudah ada. Metoda ini membutuhkan dua buah parameter. Parameter yang pertama adalah sebuah string yang mengandung nama dari record store. Parameter yang kedua adalah sebuah nilai boolean(benar/salah) yang menyatakan bahwa record store akan dibuat jika record store tidak ada di dalam MIDlet. Nilai true akan mengakibatkan sebuah record store akan dibuat dan juga membuka record store yang dibuat sedangkan nilai False tidak akan membuat record store. Karena MIDlets berjalan pada small computing device maka jangan lupa selalu menutup setiap record store yang sudah tidak digunakan dengan memanggil metoda closeRecordStore(). Metoda closeRecordStore() tidak memerlukan parameter apapun. Record store tersimpan pada memori nonvolatile. Record store bisa dihapus dengan memanggila metoda deleteRecordStore() yang membutuhkan sebuah parameter string yakni nama dari record store yang akan dihapuskan.

Membuat, Membuka, Menutup, dan  Menghapus sebuah Record Store

Source code di bawah ini mengilustrasikan bagaimana cara membuat sebuah record store yang baru , menutupnya, dan menghapusnya dari device kita. Semua informasi yang terdapat dalam record store akan hilang jika record store dihapuskan. Source code tersebut dimulai dengan mendeklarasikan tiga buah referensi untuk Display class, Alert class, dan RecordStore class. Display class dibutuhkan karena sebuah aert dialog box akan ditampilkan jika terdeteksi error oleh MIDlet.

Semua action pada source code ini terjadi pada metoda commandAction(). Routine untuk membuat, membuka, menutup dan menghapus record store terletak pada metoda yg tepat pada MIDlet. Ketika Display class sudah dibuat, source code masuk blok try{} yang pertama. Pada blok try{} yang pertama ini, source code berusaha membuat record store dengan memanggil metoda openRecordStore() dan memasukkan nama dari record store dan nilai booleannya.

Source code:

import javax.microedition.rms.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.*;
public class RecordStoreExample
extends MIDlet implements CommandListener
{
private Display display;
private Alert alert;
private Form form;
private Command exit;
private Command start;
private RecordStore recordstore = null;
private RecordEnumeration recordenumeration = null;
public RecordStoreExample ()
{
display = Display.getDisplay(this);
exit = new Command(“Exit”, Command.SCREEN, 1);
start = new Command(“Start”, Command.SCREEN, 1);
form = new Form(“Record Store”);
form.addCommand(exit);
form.addCommand(start);
form.setCommandListener(this);
}
public void startApp()
{
display.setCurrent(form);
}
public void pauseApp()
{
}
public void destroyApp( boolean unconditional )
{

}
public void commandAction(Command command, Displayable displayable)
{
if (command == exit)
{
destroyApp(true);
notifyDestroyed();
}
else if (command == start)
{
try
{
recordstore = RecordStore.openRecordStore(“myRecordStore”,
true );
}
catch (Exception error)
{
alert = new Alert(“Error Creating”, error.toString(),
null, AlertType.WARNING);
alert.setTimeout(Alert.FOREVER);
display.setCurrent(alert);
}
try
{
recordstore.closeRecordStore();
}
catch (Exception error)
{
alert = new Alert(“Error Closing”, error.toString(),
null, AlertType.WARNING);
alert.setTimeout(Alert.FOREVER);
display.setCurrent(alert);
}
if (RecordStore.listRecordStores() != null)
{
try
{
RecordStore.deleteRecordStore(“myRecordStore”);
}
catch (Exception error)
{
alert = new Alert(“Error Removing”, error.toString(),

null, AlertType.WARNING);
alert.setTimeout(Alert.FOREVER);
display.setCurrent(alert);
}
}
}
}
}

Bersambung…

39 Tanggapan to “Membuat Sistem Informasi Alumni di Handphone dengan J2ME (Record Management System- RMS)”

  1. wahyu am said

    ckcckckckckck
    kelas tinggi gan😆

  2. surya wijaya said

    mas, tolong bantuannya,..
    saya lagi ta,…
    buat aplikasi layanan mahasiswa (isi jadwal mk)…
    cara buat table di j2me pke apa?

  3. Saya mampir ke blog Anda ini utk yg pertama kali
    saya Agus Suhanto, salam kenal🙂

  4. intan said

    kok brsambung…..
    tolong source code lengkapnya ya.buat referensi TA ku. makasih…..

  5. intan said

    ok….saya tunggu loh.please……mksih……………
    in.nfarida@gmail.com

  6. wah tks neh, jadi semangat belajar java nya. Salam kenal ya.

  7. Ryan said

    mas, punya source code yahoo messenger pake j2me gak?

  8. erlita said

    mas mo tny klo pake netbeans tuk buat aplikasi MIDP trus mo panggil database pk primary key,,caranya nampilin isi database ke aplikasi tsb gmn klo di netbeans,,, q pake Apache2triad..

    mksh sblmnya

  9. konsen said

    karen kesibukan..proyek gak dilanjutkan…:(

  10. danies said

    mas,mana lanjutan dari sorce code Sistem Informasi Alumni di Handphone dengan J2ME…??
    oya aku mo tanya bagaimana cara membuat tabel di j2me???
    apakah data dalam tabel tersebut bisa di gunakan untuk operasi perhitungan..???
    terima kasih…

  11. konsen said

    Maaf mas Danies…proyeknya gak dilanjutkan…terlalu sibuk ngerjain yang lain…cara buat table biasanya pake library yg sudah ada di netbeans mas…”org.netbeans.microedition.lcdui.SimpleTableModel;” mungkin contohnya seperti ini mas:
    // div = total no of elemets from vector /2 .
    SimpleTableModel stm = new org.netbeans.microedition.lcdui.SimpleTableModel(div, 2);
    int row =0;
    int ele = 1;
    for (int i=1;i<=div;i++)
    {
    stm.setValue(0,row,vector.elementAt(ele).toString());
    ele++;
    stm.setValue(1,row,vector.elementAt(ele).toString());
    row++;
    ele++;
    }
    stm.setColumnNames(new String[] {
    "Credentials",
    "values",
    });

    tableItem1.setModel(stm); // tableitem already dropped on form.

  12. udin said

    saya baru pertama kali ini salam kenal

  13. Diah said

    Mas,gmn cr buat rms tp datax ambil dr file atw dari array 2dimensi.tlg blsan scepatx.k email sy jg boleh.trims sbelumx

  14. hehehe mari kita coba… kayaknya menarik…

  15. zulfajar said

    Makasih atas infox….salam kenal…mas

  16. Ridho said

    Trims bnget . Udah bgi” ilmu .

  17. bobby said

    Mas cara yg instant ad gak …
    rumit banget nichh ..
    ksih twu yachh kirim ke e-mail aku RF_Holic15@yahoo.com
    ok mas..

  18. aiza said

    mz blh minta code Sistem Informasi Alumni di Handphone dengan J2ME (Record Management System- RMS) ga’???
    kirim ke email q
    az_j2me@yahoo.com

    thx..^_^

  19. wah mas terusannya mana??saya lagi buat skripsi akhir nih pake RMS,,tolong lah kirimin sample2 program yang mas punya ke email saya,,,hatur nuhun,,semoga kebaikan mas di balas sama yang diatas…..amiennnn

  20. vq said

    ini bersambung kmn yaa???
    please butuh bantuan bgt buat TA neh…
    coding nyaaa..

  21. Sukrawan said

    sudah discontinued bos…lagi sibuk pake Visual Basic skrng…

  22. agung said

    Jiah…… kebalik die…
    Gue dari VB mbalelo ke Java…
    Tukeran yuk….? keder gw di jawa neh…😦

  23. azhar said

    Salam kenal sebelum nya mas…

    kebetulan saya lagi belajar pembuatan database yang bisa jalan di aplikasi J2ME..mungkin mas bisa share atau da link yang bisa saya baca.terima kasih

  24. oohh god….

  25. firdaus said

    bagaimana kalau jumlah datanya itu terlalu besar, misalnya data keuangan, pemasaran dll?
    apakah masih menggunakan RMS tadi, sedangkan itu untuk limited device?

    thanks

  26. opung said

    mz puny referensi rms g,??? sy mau tnya jg,..
    gmn cr buat rms yg datax bisa diambil / gunakn untuk storedata & filterdata. butuh bgt buat TA

  27. desta said

    saya newbi disini,,salam kenal dan mohon bimbingannya

  28. heriyan said

    saya download aplikasi yang harus di aktivasi berbentuk file zip disertakan jg rms nya katanya bisa di crack via rms itu (direstore) udah saya coba tapi gagal terus saya jd bingung gimana mengerjakannya. mohon pencerahannya. thank.

  29. erna said

    sistem informasi pelelangan itu yang dibutuhkan appa adja yaw… mohon bantuannya
    J2ME

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

 
%d blogger menyukai ini: