LitePal简介
LitePal是一款开源的数据库操作框架,它采用了对象关系映射(ORM)模式,并封装了对数据库的常见的操作,使得不用编写一行SQL语句就可以完成建表和CRUD。
我们来看看怎么使用LitePal操作数据库。
①在module的build.gradle里面添加依赖:
dependencies {
compile 'org.litepal.android:core:1.5.1'
}
②在main目录下新建一个assets目录,在assets目录下创建文件litepal.xml,并将以下内容复制到文件中
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<dbname value="demo" />
<version value="1" />
<list>
</list>
</litepal>
其中
<dbname value="demo" />标签用来指定数据库名,
<version value="1" />标签用来指定数据库的版本号,
<list>
</list>标签用来指定所有的映射模型
③配置LitePalApplication
方式一:在AndroidMenifest.xml文件中给<application/>标签添加一个name属性,属性值为:
org.litepal.LitePalApplication
<manifest>
<application
android:name="org.litepal.LitePalApplication"
...
>
...
</application>
</manifest>
方式二:创建一个MyApplication继承Application,并在其中对LitePal初始化,
在AndroidMenifest.xml文件中给<application/>标签添加一个name属性,属性值用
MyApplication的全类名
public class MyApplication extends AnotherApplication {
@Override
public void onCreate() {
super.onCreate();
LitePal.initialize(this);
}
...
}
<manifest>
<application
android:name="com.jokerwan.uselitepal.MyApplication"
...
>
...
</application>
</manifest>
④创建数据库的表及对数据库的增删改查
新建一个Book类,继承DataSupport类,定义了一些属性,及相应的get和set方法,此Book类就对应数据库的Book表
![](https://img-blog.csdn.net/20170412181533826?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
接下来,我们需要将Book类添加到映射模型列表中,修改litepal.xml的代码如下:
![](https://img-blog.csdn.net/20170412181538968?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
如果再添加一个Category类到映射模型列表中:
![](https://img-blog.csdn.net/20170412181544857?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
创建数据库
![](https://img-blog.csdn.net/20170412181550000?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
添加数据
![](https://img-blog.csdn.net/20170412182401534?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
修改数据
![](https://img-blog.csdn.net/20170412181555234?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
删除数据
![](https://img-blog.csdn.net/20170412181600842?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
查询数据
![](https://img-blog.csdn.net/20170412181606717?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXNKb2tlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
接下来,我们需要将Book类添加到映射模型列表中,修改litepal.xml的代码如下:
如果再添加一个Category类到映射模型列表中:
创建数据库
添加数据
修改数据
删除数据
查询数据
你瞧,比起之前自己写SQL语句,LitePal是不是要简洁的多呢!
最后,代码传送门