Minggu-5-RMS.ppt
-
Upload
edy-budiman -
Category
Documents
-
view
223 -
download
0
Transcript of Minggu-5-RMS.ppt
-
8/14/2019 Minggu-5-RMS.ppt
1/14
RMS
BASIS DATA DALAM J2ME
-
8/14/2019 Minggu-5-RMS.ppt
2/14
Menyimpan Data Pada
Perangkat Mobile a. Menyimpan data pada suatu file yang
diletakkan pada direktori res
(tidak dapat diubah dalam run-time)
b. MenggunakanRecordManagementSystem (RMS)
(dapat dilakukan operasi CRUD)
Create, Retrieve,Update,Delete
-
8/14/2019 Minggu-5-RMS.ppt
3/14
RMS (Record Management System)
Spesifikasi RMS telah ada sejak MIDP 1.0.
Hal ini menjanjikan bahwa perangkat mobile yang
MIDP-compliant memiliki RMS. RMS menjamin integritas data yang disimpannya.
Perlu diperhatikan thread yang menggunakan
data pada RMS tersebut. Data yang disimpan oleh RMS secara fisik dapat
ditempatkan di lebih dari satu tempat.
-
8/14/2019 Minggu-5-RMS.ppt
4/14
RMS (cont..)
Tempat yang biasa dipakai antara lain padaRam perangkat mobile
Media penyimpanan yang dapat digunakanoleh perangkat mobile seperti flash disk.
Data yang disimpan dalam RMS disebutrecord.
Record merupakan data yang berbentukarray of byte.
Pustaka RMS terdapat dalam packagejavax.microedition.rms
-
8/14/2019 Minggu-5-RMS.ppt
5/14
STRUKTUR RMS
-
8/14/2019 Minggu-5-RMS.ppt
6/14
Membuka RecordStore
Dalam kelas RecordStore didefinisikan tiga staticmethod untuk membuat obyek RecordStore :
a. static RecordStore openRecordStore(StringrecordStoreName, boolean createIfNecessary)
b. static RecordStore openRecordStore(StringrecordStoreName, boolean createIfNecessary, intauthMode, boolean writable)
c. static RecordStore openRecordStore(String
recordStoreName, String vendorName, StringsuiteName)
-
8/14/2019 Minggu-5-RMS.ppt
7/14
Menulis ke RecordStore
Method untuk menambahkan/menulis datake dalam RecordStore adalah :
int addRecord(byte[] data, int offset, intnumByte)
Masukan berupa array byte, posisi arraydan jumlah byte yang ditulis
Method menerima nilai kembali berupa IDdari record, yang berguna untuk membaca
-
8/14/2019 Minggu-5-RMS.ppt
8/14
CONTOH MENULIS RECORD
try{ rs =RecordStore.openRecordStore(namaFile,true);
String dataS=Helo Percobaan;byte[] dataArray = dataS.getBytes();
rs.addRecord(dataArray,0,dataArray.length);
rs.closeRecordStore();}catch (RecordStoreNotOpenException rsnoe){
}
-
8/14/2019 Minggu-5-RMS.ppt
9/14
CONTOH
PROYEK MENULIS DanmembaCA RECORD
-
8/14/2019 Minggu-5-RMS.ppt
10/14
Variabel Project
import javax.microedition.midlet.*;import javax.microedition.rms.*;
import javax.microedition.lcdui.*;
import java.io.*;
public class RmsMidlet extends MIDlet implementsCommandListener {
private RecordStore rs=null;
private Form form;
private String namaFile;
private TextField txtBaca ;
private Display display;
private Command exit, Simpan, Baca;
private StringItem sti;
-
8/14/2019 Minggu-5-RMS.ppt
11/14
Constructor :
public RmsMidlet() throws RecordStoreException, IOException{
form =new Form("PILIH MENU :"); namaFile="Data_Ku";txtBaca=new TextField("Ketik Teks yg akan disimpan :","", 25,
TextField.ANY);
form.append(txtBaca);
sti=new StringItem("HASIL BACA RECORD","");
form.append(sti);
display=Display.getDisplay(this);
exit=new Command("Exit",Command.EXIT,1);
Simpan=new Command("Simpan",Command.OK,1);
Baca=new Command("Baca",Command.OK,2);form.addCommand(exit); form.addCommand(Simpan);
form.addCommand(Baca);
display.setCurrent(form);
form.setCommandListener(this);
}
-
8/14/2019 Minggu-5-RMS.ppt
12/14
CommandAction(..,..)
public void commandAction(Commandcmd,Displayable disp) {
if(cmd==exit) { destroyApp(false); }
if(cmd==Simpan) {try { BacaSimpan();
} catch (RecordStoreException ex) {
ex.printStackTrace(); }
}
if(cmd==Baca) {try { TampilkanRecord();
} catch (RecordStoreException ex) { ex.printStackTrace();}
}
}
-
8/14/2019 Minggu-5-RMS.ppt
13/14
BacaSimpan()
public void BacaSimpan() throws RecordStoreException{String dataS ="";
int pr=0;
try{ rs = RecordStore.openRecordStore(namaFile, false);
dataS=txtBaca.getString();
byte[] dataArray = dataS.getBytes();
rs.addRecord(dataArray,0,dataArray.length);
pr=rs.getNumRecords();
rs.closeRecordStore();
}catch (RecordStoreNotOpenException rsnoe){ form.append("salah tulis");}
form.append("Data :"+dataS+" ..disimpan di recID-"+pr);
}
-
8/14/2019 Minggu-5-RMS.ppt
14/14
Tampilkan
public void TampilkanRecord() throws RecordStoreException{
try{
byte[]data=new byte[25];
rs = RecordStore.openRecordStore(namaFile, true);
int cacahRec=rs.getNumRecords();for(int i=1;i