钛极OS之存储 为了方便用户使用, TiJOS 提供了一些常用的NB模组存储类方便用户在应用中使用, 如KeyValueStorage,SharedBuffer等。此类只适用NB模组硬件平台。 Java包 tijos.framework.platform.util 主要类说明:
类名称 | 说明 | KeyValueStorage | 键值存储 | SharedBuffer | 缓冲区存储 |
KeyValueStorage 键值存储,简称KV存储。它是NoSQL存储的一种方式。它的数据按照键值对的形式进行组织,索引和存储。KV存储非常适合不涉及过多数据关系业务关系的业务数据,同时能有效减少读写磁盘的次数,比数据库存储拥有更好的读写性能。在TiJOS里主要存储非临时的数据,掉电不会丢失数据。 主要方法如下:
方法 | 说明 | KeyValueStorage getInstance( ) | 获取键值存储实例 | byte[] readValue(String group, String key) | 读取键值存储值 | void writeValue(String group, String key, byte[] value) | 写入键值存储值 | void deleteGroup(String group) | 删除键值存储组 | void deleteKey(String group, String key) | 删除键值存储键 | void queryBegin( ) | 开始查询键值存储 | String queryNextGroup( ) | 查询下一个组名 | String queryNextKey( ) | 查询下一个键名 | void queryEnd( ) | 查询键值存储端 |
例程:
- <font size="3">...
- KeyValueStorage kv = KeyValueStorage.getInstance(); //获取键值存储实例
- kv.writeValue("kv-1", "test1", "hello 1".getBytes()); //写入键值存储值
- kv.writeValue("kv-2", "test1", "hello 1".getBytes());
- kv.queryNextGroup();
- kv.queryBegin();
- kv.readValue("kv-1", "test1"); //读取键值存储值
- kv.deleteGroup("kv-1");
- kv.deleteKey("kv-2", "test1");
- ... </font>
复制代码 SharedBuffer 共享内存缓冲区,实现进程间通信的一种方式。希望访问该内存块的其他进程必须请求对它的访问,或由创建它的进程授予访问内存块的权限。共享内存被映射到使用它的每个进程的地址空间。当一个进程写共享内存,所有进程都立即知道写入的内容,并且可以访问。相当于函数间全局变量的关系类似。进程可能共享一个逻辑地址,也可以共享某些物理地址。在TiJOS里主要存储临时数据,掉电数据将丢失,可以用于应用之间数据调用。
方法 | 说明 | SharedBuffer getInstance( ) | 获取共享缓冲区实例 | int getSize( ) | 获取共享缓冲区大小 | int read(byte[] dest, int destOffset, int srcOffset, int length) | 从共享缓冲区读取数据 | int write(byte[] src, int srcOffset, int destOffset, int length) | 将数据写入共享缓冲区 |
例程:
- <font size="3">...
- byte[] src = null;
- byte[] dest = null;
- SharedBuffer sb = SharedBuffer.getInstance();
- int size = sb.getSize();
- sb.write(src, 0, 0, size);
- sb.read(dest, 0, 0, size);
- ...</font>
复制代码 更多详细介绍请见钛云物联官网:www.tijos.net |