程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 《Java 手機/PDA 程序設計入門》讀書筆記11-- MIDP數據庫設計1

《Java 手機/PDA 程序設計入門》讀書筆記11-- MIDP數據庫設計1

編輯:關於JAVA

JDBC針對桌面平台或企業用戶設計,不適合移動通訊設備。

MIDP為的永久性數據儲存提供了面向紀錄的數據庫(數據庫培訓 數據庫認證 )(Record OrIEted Database),稱作“記錄管理系統”Record Management System(RMS)

所有和記錄管理系統相關的類放於Javax.microedition.rms包中,包括:一個類:RecordStore四個接口:RecorComparatorRecordEnumerationRecordFilterRecorListener五個異常:InvalidRecordIDExceptionRecordStoreExceptionRecordStoreFullExceptionRecordStoreNotFoundExceptionRecordStoreNotOpenException

一般的數據庫管理系統存放表格(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()開啟記錄倉儲,這是一種靜態工廠方法的設計模式。而不能通過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,每更改一次加1Next Record ID:初始為1,每加入一筆新記錄加1

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved