LitePal数据库的使用

今天来一波LitePal数据库的使用操作

LitePal数据库的githup地址:

https://github.com/LitePalFramework/LitePal

直接开始步骤了

1、添加依赖

implementation 'org.litepal.android:core:2.0.0'

2、在assets创建litepal.xml文件管理数据库

如图

 为了方便,贴个代码粘贴

<?xml version="1.0" encoding="utf-8"?>
<litepal>
    <!--数据库名称-->
    <dbname value="demo" />
    <!--数据库版本号-->
    <version value="1" />
    <!--表-->
    <list>
        <mapping class="com.weidu.testlitepal.Person" />
    </list>
</litepal>

3、初始化数据库

LitePal.initialize(this);

4、以上就基本完成了配置操作,切记一定要用应用程序的上下文初始化,不要在一些服务或者活动的上下文,避免内存泄漏

开始增删改查的基本操作了

这里我就添加一个Person.java用来测试

public class Person extends LitePalSupport {
    private int id;

    private String name;

    private String sex;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", sex='" + sex + '\'' +
                '}';
    }
}

4.1、增:

private int id = 0;
public void insert(){
    id++;
    Person person = new Person();
    person.setId(id);
    person.setName("姚明");
    person.setSex("男");
    person.save();//这个一定不能漏了
}

看下结果吧(顺便也把查的功能也贴上来)

4.2、查

public void check(){
    List<Person> all = LitePal.findAll(Person.class);//查询功能
    for (int i = 0;i<all.size();i++){
        Log.i("test_LitePal","数据库数为:id = " + all.get(i).getId() + ",name = " + all.get(i).getName() + ",sex = " + all.get(i).getSex());
    }
}

显示增加的结果(我添加了三条数据,就id变化,其他的没有变,懒了点)

4.3、删

public void delete(){
    LitePal.delete(Person.class,1);//删除id为1的数据,其他的删除条件看各位网友自己需求了
}

删除结果:

 4.4、改

public void update(){
    ContentValues values = new ContentValues();
    values.put("name", "这是修改操作");//修改字段name的内容
    LitePal.updateAll(Person.class, values);
}

修改结果:

5、以上就是增删改查了,现在来添加字段,在greendao中,修改字段是一件很麻烦的事情,但是使用LitePal就比较方便了,来看操作

现在我添加了字段age后,不升级数据库版本,结果age虽然set进去的是18,但是新添数据是失败的,之前的数据会添加这个age字段

升级数据库版本后再添加操作

添加数据成功

好了,以上就是基本操作,更详细的以后再研究,希望能帮助到各位

最后献上我的代码

https://github.com/sdgSnow/TestLitePal

猜你喜欢

转载自blog.csdn.net/lovelixue/article/details/81875306