首先添加依赖库
编辑build.gradle
在dependencies内加入以下代码
compile ‘org.litepal.android:core:1.5.0’ (1.5.0指当前版本,添加最新版本即可)
然后编辑AndroidManifest.xml文件在
< ?xml version="1.0" encoding="utf-8" ?>
< litepal>
< dbname value="data"></dbname> //数据库的名称
< version value="1"></version> //数据库的版本
< list>
< mapping class=""/>
//这里加入类的绝对路径
< /list>
< /litepal>
Litepal相对于sqlite的表来说,表的每一行相当于Litepal的中类的实例,每一列相当于类中的字段,一个类可以看作一个表,类名即为表名。
所以自己定义若干个继承DataSupport的类添加到litepal.xml文件中的中,相当于创建多个表。
创建数据库只需一句代码
Connector.getDatabase();
向表中加入数据只需声明一个类的实例并且初始化之后调用从父类DataSupport继承的save()方法即可。
向调用过.save或者从表中查找到的对象调用delete()方法可以从表中删除这一行。
删除数据需要DataSupport类的静态方法deleteAll(Class < ?> modelClass, String… conditions)其中参数为
- 第一个参数表示要删除表的类
- 后面的参数为限定删除哪些项
例如deleteAll(Book.class,“number > ?”, “10“)为删除Book表中number大于10的项。
查找表可以调用DataSupport类的静态方法findAll()参数为表的类名。
也可以调用find方法配合其他静态函数的限定。
例如
List< Book> lb=DataSupport.select("price","name")
//只查找price和name两列
.order("price desc")
//以price降序排列,desc表示降序,不写或者asc表示升序
.where("price < ?","130")
//限定为price<130的项,类似于上面deleteAll的后面的参数
.offset(1)
//从第几项开始查找
.limit(5)
//查找的项数,可以配合上面的offset()使用
.find(Book.class);
//查找的表的类
上面的函数可以连续使用,最后返回一个List
Lirepal也可以使用原生的sqlite进行操作
使用DataSupport的findBySQL();