中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Java > 综合文章
《Java 手机/PDA 程序设计入门》读书笔记11-- MIDP数据库设计1
作者:未知 时间:2005-07-27 22:37 出处:CSDN 责编:chinaitpower
              摘要:《Java 手机/PDA 程序设计入门》读书笔记11-- MIDP数据库设计1

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()开启记录仓储,
这是一种静态工厂方法的设计模式。而不能通过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()取得记录仓储版本号码


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有