美文网首页
HawK数据库框架原理剖析与使用

HawK数据库框架原理剖析与使用

作者: Zeng_小洲 | 来源:发表于2019-06-24 11:34 被阅读0次

    Hawk介绍

    Hawk是Android应用开发中非常便捷的数据库框架

    • 简单的 key-value 数据库
    • 能存任何数据类型
    • 操作数据库只需一行代码
    • AES/BASE64 加密
    • 选择使用SharedPreferences 或者 SQLite

    Hawk架构图

    image.png

    Hawk原理剖析

    问题:
    如何做到存储所有类型数据?

    image.png image.png

    Hawk使用方法

    1.在gradle中进行配置

        repositories {  maven { url "https://jitpack.io" }  } 
        dependencies {   compile 'com.github.orhanobut:hawk:1.21'}
    
    

    2.初始化Hawk,只需要在应用初始化一次,如在onCreate()里

        Hawk.init(this)  
            .setEncryptionMethod(HawkBuilder.EncryptionMethod.MEDIUM) 
            .setStorage(HawkBuilder.newSqliteStorage(this))//存储方式
            .setLogLevel(LogLevel.FULL)  
            .build();
    

    存储方式或为

     HawkBuilder.newSharedPrefStorage(this)
    

    3.数据操作
    存数据

          Hawk.put(key, T); / Hawk.chain().put(key1,T).put(key2,T).commit();
    eg:             Hawk.put("key", "something"); // Save string
          Hawk.put("key", true); // save boolean
          Hawk.put("key", new Foo()); // save an object
          Hawk.put("key", List<String>); // save list
          Hawk.put("key", Map<Foo,Foo>); // save map
    

    取数据

    T result = Hawk.get(key); / T result = Hawk.get(key, T);
    eg:            
    boolean value = Hawk.get(key);
    List<String> value = Hawk.get(key);
    List<Foo> value = Hawk.get(key);
    

    移除数据

    Hawk.remove(key); / Hawk.remove(keys); 
    

    判断是否包含某个key

    boolean contains = Hawk.contains(key);
    

    相关文章

      网友评论

          本文标题:HawK数据库框架原理剖析与使用

          本文链接:https://www.haomeiwen.com/subject/xujnqctx.html