站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2ME 专题J2ME 如何实现对象持久化?

J2ME 如何实现对象持久化?

摘要: J2ME 如何实现对象持久化?


最近在开发J2ME项目, 客户提出需要实现Permanent Object (对象持久化), 但是不知道如何实现, 特来请教各位高手.

在MIDP中, MIDlet支持RMS, javax.microedition.rms 包中提供类数据持久话的方式, 但是不知道是否能让Object也能持久化呢?

另外, 不知道Interface Persistable是否能实现持久化呢?

望各位多多指教哦!!!


没有现成的东西,只有自己实现


如何实现在手持设备拔掉电池, 手机内原有实例对象仍然存在?



你的意思是不是把实例对象串行化存储啊?


实例对象串行化存储在J2SE和J2EE中可以支持, 好像在J2ME中就不提供了.

我是个J2ME新手, 我发现好像J2ME是不提供文件操作的, 如果想保存些类似通信录等用户信息时, 应该如何操作呢?

javax.microedition.rms 包确实提供了持久化, 但是只支持byte array, 大小限制在64KB. 我现在开发的手机是RIM 的BlackBerry. 其中提供一个PersistentObject, 可以直接保存object, 不知道有哪位高手用过?

请指教!!!


看看你的手机是否支持JSR-75,如果支持的话是可以使用文件系统的;否则的话只能利用有限的RMS空间了,至于怎么才能用就看本事了


无情接分,友情up!


我自己来结贴子吧.

RMS的RecordStore是通常J2ME中常使用的数据存储方式, 其缺点是只能存放byte [], 还有容量的限制64KB.

我现在从事的项目是使用的BlackBerry机器, RIM公司提供的API中支持一个能存放Object的PersistentStore, 我现在就用起来实现数据储存了.

另外, 我还得到一篇关于BlackBerry下开发J2ME程序的内存优化文档, 其中提到尽量少使用JAVA的对象, 而多多使用基本类型, 不知道这话有道理不?



自己实现


谁说RMS容量限制是64K啊?
这东西可不好说,有的机型无限制的,有的机型几K就满了

少用对象,是因为对象都放在heap里面,速度慢~~
多用基本类型,是因为绝大多数基本类型(主要指局部变量)都放在stack里面,速度快多了,生命周期就是其所在method的进去到出来,所以能很快地回收和释放空间

但这牵扯到一个面向对象编程和面向过程的选择
还是按照你的编码风格来的好
现在的机子性能都不错了,不必太遵守若干年前的准则



↑返回目录
前一篇: 请教关于Nokia QD的setClip问题!
后一篇: 急!装了索爱模拟器无法运行