欢迎来到天天文库
浏览记录
ID:45849162
大小:375.00 KB
页数:34页
时间:2019-11-18
《J2ME应用教程 4 记录管理系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、记录管理系统陈旭东2021年7月19日2内容RMS概述记录库操作记录操作监视记录库记录的查询与排序RMS概述记录管理系统(RecordManagementSystem,RMS)小型、简单数据库管理系统可以保存简单数据可以将对象状态经过序列化之后,保存到记录管理系统记录管理系统存在于设备特定的存储空间,称为RMS空间RMS数据是保存在记录库(RecordStore)中,在记录库中的每一条数据也被称为记录(Record)。记录库其实就是一个记录的集合,在RMS中,记录数据只是一个简单的字节数组(byte[])。如果把一
2、个记录库当成数据库表,那么该表只有两个字段:一个整数类型的记录ID和一个字节数组表示的记录数据。记录库和记录记录库(RecordStore)RMS系统的核心就是记录库在一个MIDletSuite的RMS空间中,可以有多个记录库,这些记录库的名称必须是唯一的。记录库的名称最长为32个字符(Unicode字符),而且是大小写敏感的。在不同的MIDletSuite中,可以有重名的记录库,RMS使用记录库的全名来区分这些记录库。一个记录库全名的由3个部分组成:“MIDletSuite名+供货商名+记录库名”。MIDletS
3、uite的全名是由MIDletSuite名、供货商名和版本号三个属性组成的唯一名称访问记录库不管记录是如何存储在MIDP设备之上的,都不允许MIDlet直接访问,MIDP应用必需通过RMSAPI才能访问RMS记录库属性记录库属性包括:名称时间戳版本号下一条记录位置等实现数据同步记录(Record)记录是记录库中的数据。记录库中的每条记录都有一个唯一的整数标识,称为记录ID(recordId),记录库中的第一条记录的记录ID值为1。在每次向记录库中添加记录时,记录ID会依次递增。每条记录的数据都是简单的字节数组,由记
4、录ID唯一标识。每个记录库中可以存在任意数量的记录,每个记录中的字节数组大小(字节数)也是可变的。当记录库中的一条记录被删除后,原来的记录ID值不允许再次使用记录库操作在MIDP中,所有RMS相关的类都位于javax.microediton.rms包中只提供RecordStore类来保存和访问MIDP设备上的数据创建记录库、增加记录、删除记录、更新记录、获取记录库状态创建和打开记录库使用RecordStore类提供的openRecordStore()方法才能创建或打开记录库,三种使用格式打开或创建指定名字的记录库p
5、ublicstaticRecordStoreopenRecordStore(StringrecordStoreName,booleancreateIfNecessary)用于打开或创建可以和其他MIDletSuite共享的记录库publicstaticRecordStoreopenRecordStore(StringrecordStoreName,booleancreateIfNecessary,int authmode,boolean writable)打开已经存在的、属于其它MIDletSuite的记录库pub
6、licstaticRecordStoreopenRecordStore(StringrecordStoreName,StringvendorName,StringsuiteName)关闭记录库在使用完记录库之后,必须关闭记录库以释放系统资源RecordStore类方法publicvoidcloseRecordStore()需要注意的是,只有在调用closeRecordStore()方法的次数和调用openRecordStore()方法的次数相等,该记录库才会真正被关闭。也就是说,只要还有MIDlet在使用该记录库,
7、记录库就不会被关闭。如果一个MIDlet关闭了记录库之后还试图执行记录库操作(包括关闭记录库),就会产生RecordStoreNotOpenException异常删除记录库RecordStore类的方法publicstaticvoiddeleteRecordStore(StringrecordStoreName)MIDletSuite只允许删除自己的记录库。在删除记录库前,该记录库必须为关闭状态,否则会产生RecordStoreException异常。如果记录库不存在,则会发生RecordStoreNotFound
8、Exception异常2021年7月19日13记录库属性操作改变访问模式publicvoidsetMode(int authmode,boolean writable)获取记录库列表publicstaticString[]listRecordStores()获取记录库属性publiclonggetLastModified()publicStringgetNa
此文档下载收益归作者所有