• 请不要在回答技术问题时复制粘贴 AI 生成的内容
SumiMakito
V2EX  ›  程序员

Android 开源库: 可持久化的 Key-value 数据库:QuickKV

  •  
  •   SumiMakito ·
    SumiMakito · Mar 2, 2015 via Android · 5261 views
    This topic created in 4117 days ago, the information mentioned may be changed or developed.
    写程序用到HashMap的时候要指定类型再实例化,而且HashMap想要持久化到文件的时候也很麻烦,还需要写遍历再填入JSON中,最后还要输出到文件,OutputStream还需要捕捉异常,实在是麻烦。
    于是就写出来了这个东西,起初是准备自己用的,但后来觉得这个东西对很多人来说应该很方便。
    免去了Map实例化、持久化的步骤,应该也可以看作是一个加了一点功能的Key-Value数据库吧......
    目前Android项目可以使用这个库,不久后会完成Java项目可用的库。

    部分特性:
    1.最简单的KV数据库:省略掉了Map实例化的过程(不可持久化, 只是封装了Map)
    2.可持久化的KV数据库:封装Map实例化、持久化的方法,持久化只需要调用一个方法,多个实例同名数据库之间可同步。
    3.一个主要实例管理多个数据库。
    4.可选使用AES256加密数据库,能够保护数据。(实验功能)

    https://github.com/SumiMakito/QuickKV
    (将不断完善,欢迎加星星~)
    有中英文(中式)API文档

    第一次来这里发东西,有些紧张呢...........
    Supplement 1  ·  Mar 7, 2015
    最近更新至了0.8版本。
    删除了一些没用的类,加密的问题基本得到解决,读文件和解析的速度比前几版本要快。
    嗯,就是这些。
    文档又写了一大堆 T_T
    感谢加星星,这个项目还会不断更新,我的目标就是好用即可。
    7 replies    2015-03-04 17:36:40 +08:00
    1023400273
        1
    1023400273  
       Mar 2, 2015
    SharedPreference?
    SumiMakito
        2
    SumiMakito  
    OP
       Mar 2, 2015 via Android
    @1023400273 不是...用HashMap存放数据 持久化时转为JSON再写入文件
    invite
        3
    invite  
       Mar 2, 2015
    很好奇加密是怎么个做法
    loading
        4
    loading  
       Mar 2, 2015
    @invite
    4.可选使用AES256加密数据库,能够保护数据。

    我认为,这对于数据库来说没意义,浪费性能。
    况且aes256这类算法没用,专注提高性能吧!
    数据保密方面的安全不是数据库提供的东西。
    SumiMakito
        5
    SumiMakito  
    OP
       Mar 2, 2015 via Android
    @loading 加密只是可选,并且还在实验阶段中,将来可能会移除这部分的功能,默认是不启用加密的。
    RelativeLayout
        6
    RelativeLayout  
       Mar 3, 2015
    存储少量数据应该没问题... 大量的就不好说了...
    kirisetsz
        7
    kirisetsz  
       Mar 4, 2015
    嗯、个人一般是使用 SharedPreferences + BaseActivity 提供辅助函数调用 JSON 序列化器进行转换的。 减少引用泄露风险的同时进行复杂数据结构的序列化/反序列化。当然不支持复杂的查询、这和所有的 KV 数据库是一样的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5936 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 02:10 · PVG 10:10 · LAX 19:10 · JFK 22:10
    ♥ Do have faith in what you're doing.