《Java 手機/PDA 程式設計入門》讀書筆記11– MIDP資料庫設計1

來源:互聯網
上載者:User

JDBC針對案頭平台或企業使用者設計,不適合移動通訊裝置。

MIDP為的永久性資料儲存提供了面向紀錄的資料庫(Record Orieted Database),稱作“記錄管理系統”
Record Management System(RMS)

所有和記錄管理系統相關的類放於javax.microedition.rms包中,包括:
一個類:
RecordStore
四個介面:
RecorComparator
RecordEnumeration
RecordFilter
RecorListener

五個異常:
InvalidRecordIDException
RecordStoreException
RecordStoreFullException
RecordStoreNotFoundException
RecordStoreNotOpenException

一般的資料庫管理系統存放表格(Table),
記錄管理系統中存放記錄倉儲(Record Store)。

記錄倉儲全名(最多32個Unicode字元,區分大小寫):
MIDlet Suite名稱+供貨商名稱+記錄倉儲名稱
實際裝置上,一個MIDlet Suite全名:
MIDlet Suite名稱+供貨商名稱+版本號碼
即 MIDlet Suite-Name+MIDlet-Vendor+MIDlet-Version

如果把記錄倉儲想象成表格,那麼這個表格只有兩個欄位(Column)
一個是Record ID,一個是Data

RecordStore類代表獨一無二的記錄倉儲。我們用RecordStore類提供的openRecordStore()開啟記錄倉儲,
這是一種靜態Factory 方法的設計模式。而不能通過new來建立一個RecordStore對象。

openRecordStore()建構函式
4參數:
記錄倉儲名稱
布爾值,true表示開啟的記錄不存在是讓系統建立一個新的資料倉儲 false不存在時拋出RecordStoreNotFOundExecption異常
認證模式,接受:Record.AUTHMODE_PRIVATE--只有建立此記錄倉儲的MIDlet Suite才能存取這個記錄倉儲,
Record.AUTHMODE_ANY--該裝置上的任何MIDlet都可以使用讀取記錄倉儲。
布爾值,該裝置上的其它MIDlet是否能夠寫入資料到這個記錄倉儲。
其它的MIDlet對記錄倉儲的讀取:第三個參數決定讀取權,第四個參數決定寫入權

如果開啟時,記憶體不敷使用,拋出RecordStoreFullException

3參數:
記錄倉儲名稱
MIDlet Suite供貨商名稱
認證模式,Record.AUTHMODE_PRIVATE--建立記錄倉儲的MIDlet和當前調用它的MIDlet必須同屬一個MIDlet Suite,
否則拋出SecurityException;Record.AUTHMODE_ANY--任何MIDlet都可以調用此方法。

2參數:
記錄倉儲名稱
布爾值,true表示開啟的記錄不存在是讓系統建立一個新的資料倉儲 false不存在時拋出RecordStoreNotFOundExecption異常

setMode()方法來改變認證模式,以及其它MIDlet Suite中MIDlet的寫入權
listRecordStores()取得當前MIDlet所在的MIDlet Suite中所有的記錄倉儲的名稱

使用完記錄倉儲後,須用closeRecordStore()閉記錄倉儲,以釋放系統資源,
所有RecordListener被清空,相關的RecordEnumeration。
如果已關閉,拋出RecordStroeNotOpenException。

deleteRecordStore()刪除記錄倉儲。如果這個記錄倉儲正被佔用,拋出RecordStoreNotFoundException

記錄倉儲的相關資訊
名字:記錄倉儲的名字
時間戳記-long類型:最後變動的時間(System.currentTimeMills()取得)
版本號碼:初始為0,每更改一次加1
Next Record ID:初始為1,每加入一筆新記錄加1

getLastModified()取得時間戳記
getName()取得記錄倉儲的名稱
getNextRecordID()取得Next Record ID的值
getNumRecords()取得記錄倉儲中記錄的筆數
getSize()取得記錄倉儲中所佔據的空間
getSizeAvailable()剩下多上空間
getVersion()取得記錄倉儲版本號碼

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.