LitePal是一个开源库,一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式,将我们平时开发最常用到的一些数据库的功能进行了封装,不用编写异性SQL语句就可以完成各种建表和增删改查的操作(CRUD).LitePal项目主页上也有详细的使用文档,https://github.com/LitePalFramework/LitePal
配置LitePal
Using Android Studio
Edit your build.gradle file and add below dependency:
dependencies { compile 'org.litepal.android:core:1.6.1' }
在把LitePal成功引入当前项目中后,接下来配置litepal.xml文件,右击app/src/main目录-->New--->Directory,创建一个assets目录,然后在assets目录下再新建一个litepal.xml文件
从https://github.com/LitePalFramework/LitePal上将下面内容复制粘贴在新建好的litepal.xml文件中
其中<dbname>标签用于指定数据库名,<version>标签用于指明数据库版本号,<list>标签用于指定所有的映射模型.
github上的开源项目的说明如下,各个参数代表的什么意思!
最后还需要再配置一下LitePalApplication,修改AndroidManifest.xml中的代码:
跟着github上的步骤走!!!因为我们的闭包中的内容是从github上找的
到现在为止我们的配置工作就做好了.
如果你想要更新(Update)升级你的数据库数据
使用LitePal增改删查数据
使用LitePal添加数据
使用LitePal更新数据
第一种方法:比较麻烦因为首先你要先添加数据然后再保存再在保存的基础上对已有数据进行修改.-----------核心是必须要向mode中添加数据保存再更改再保存达到更新数据的目的
第二种方法:通过DataSupport的updataAll()方法来更新数据,可以指定约束条件
即对于那些想更新为默认值的数据不可以采用set方法,LitePal同意提供了一个setToDefault()方法,其参数是想更改为默认值的列名
使用LitePal删除数据
第一种方法:直接调用已存储对象的delete()方法即可.已存储对象是调用过save()方法的对象(即存储了数据的mode)或者通过LitePal提供的查询API查出来的对象,都是可以直接使用delete方法来删除对象的这种方法比较简单代码见文章最后部分!
第二种方法:运用DataSupport的deleteAll方法来删除数据,可以指定约束条件
使用LitePal查询数据
LitePal提供的其他好用的查询API
附LitePal删除数据第一种方法:
private ButtonmBtnCreateDatabase,mBtnadd,mBtnupdate,mBtnupdata1,mBtndelecte,mBtnquery,mBtnDeleteData;
android:id="@+id/delete_database"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Delete Database1"
android:textAllCaps="false"
/>
//LitePal的第一种删除数据的方法
mBtnDeleteData=findViewById(R.id.delete_database);
mBtnDeleteData.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Book book=new Book();
book.setAuthor("wang ru xue");
// book.setId();
book.setName("jin ping mei");
book.setPages(510);
book.setPrices(19.95);
book.setPress("bu zhi dao");
book.save();
//可以通过打开adb shell 来看其数据id来知道这个方法是新建一条数据马上又把这条数据删除 所以
// 当你一直电机这个按钮然后再注释掉book.delete();这句话看到的数据的id不是一些连续的值
book.delete();
}
});