美文网首页
LitePal使用入门

LitePal使用入门

作者: 指尖劃過諾言 | 来源:发表于2019-03-13 16:34 被阅读0次

    LitePal简介

    • LitePal是Android中比较轻便的开源数据库框架,只需要简单的配置就可以使用,避免了自己创建过程中的小错误。
    • LitePal提供快捷简单直观的修改数据库版本的方式,方便数据库版本更迭。

    基本用法

    准备步骤:

    • 同步compile 'org.litepal.android:core:1.4.1'

    • assets文件夹中新建litepal.xml,并填充以下代码:

        <?xml version="1.0" encoding="utf-8"?>
        <litepal>
            <dbname value="demo" ></dbname>
            <version value="1" ></version>
            <list>
      
            </list>
        </litepal>
      
      
    • 【1】没有自己的application的直接在启动界面activity中添加

        android:name="org.litepal.LitePalApplication"
      
      
    • 【1】如果有自己的application,可以在onCreate中调用LitePal.initialize(context);

    • 创建一个bean类,继承DataSupport,相当于列的内容

        public class TestBean extends DataSupport {
            @Column(unique = true, defaultValue = "unknown")
            public String name;
            public int age;
            public String sex;
        }
      
      
    • litepal.xmllist节点添加如下代码,相当于一个某个表的创建语句

        <list>
            <mapping class="com.example.ll.testlitepal.TestBean"></mapping>
        </list>
      
      
    • 更新数据库版本,只需要在litepal.xml文件中,修改version节点中的value节点的值

        <version value="2" ></version>
      
      

    数据操作

    • 增:

        TestBean testBean = new TestBean();
        for (int i = 1; i < 6; i++) {
            testBean.name = "张三" + i;
            testBean.age = 18 + i;
            testBean.sex = "你猜" + i;
            testBean.save();
        }
      
      
    • 删:

      • 删除单个数据(删除数据为1的数据):

          DataSupport.delete(TestBean.class, 1);
        
        
      • 删除多个(删除字段age大于22的数据):

          DataSupport.deleteAll(TestBean.class, "age > ?" , "22");
        
        
    • 改:

      • 修改单个数据(修改id为1的数据的age为29):

          TestBean bean = DataSupport.find(TestBean.class,1);
          bean.age = 29;
          bean.save();
        
        

        或者:

          TestBean bean = new TestBean();
          bean.age = 33; 
          bean.update(1);
        
        
      • 修改多个数据:(修改所以age23的sex字段为nan`)

          TestBean bean = new TestBean();
          bean.sex = "nan";
          bean.updateAll("age = ?", 23);
        
        
    • 查:

      • 按照id查找

          TestBean bean = DataSupport.find(TestBean.class, 1);
        
        
      • 查询所有数据(返回对象集合)

          ArrayList<TestBean> allBean = DataSupport.findAll(TestBean.class);
        
        

    小结:

    • 数据库中的id默认给出,以1开始。删除后,不会自动向前补齐。

    补充:

    • 还有高级用法,尚未补全,有需要的小伙伴请参考下方GitHub项目源码介绍。
    • 上传了Eventbus-Litepal的demo,有需要的同学可以自行clone。
      EventBus 3.0 简单使用介绍
      项目地址

    参考资料:

    • GitHub项目库:https://github.com/binbinLibrary/LitePal

    相关文章

      网友评论

          本文标题:LitePal使用入门

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