开源库LitePal

来源:互联网 发布:视频直播美颜软件 编辑:程序博客网 时间:2024/06/07 15:21
使用开源库LitePal,需要先配置:
1首先在项目app/buile.gradle文件闭包中添加开源库的引用;
dependencies{
..
compile 'org.litepal.android:core:1.4.1'//前面是固定值,1.4.1是版本号
}


2再配置litepal.xml文件,在app/src/main目录下创建assets目录,在目录下创建litepal.xml文件,
在assets下右键new-->file,填入litepal.xml-->OK,不加后缀.xml创建的只是普通文件;运行时会报错;
编辑内容如下:
<?xml version="1.0" encoding="utf-8"?>
<litepal>
    <dbname value="BookStore"></dbname>
    <version value="1"></version>
    <list>
<mapping class="com.example.litepaltest.entities.Book">//创建了实体后再添加
</list>
</litepal>
其中,<daname>用于指定数据名,<version>数据库的版本号,<list>指定所有的映射模型(实体类)


3在AndroidManifest.xml文件中配置:
<application
android:name="org.litepal.LitepalApplication"
..
>

创建实体类Book(表),继承DataSupport;要操作数据必须要有继承结构;
创建数据库
LitePal.getDatabase();


添加数据
//使用litepal添加数据
                Book myBook=new Book();
                myBook.setName("倚天屠龙记");
                myBook.setAuthor("金庸");
                myBook.setPrice(35.5);
                boolean isSave=myBook.save();//调用save()保存数据,boolean只是方便在日志中查看
                Log.d("添加成功?",isSave+"");


修改数据
//使用litepal修改数据
                Book book=new Book();
                book.setPrice(55);
                int rows=book.updateAll("author=?","金庸");//不指定约束条件,就更新所有


删除数据
//使用litepal删除数据
                DataSupport.deleteAll(Book.class,"price>?","55");//参数1指定删除哪张表,后面是约束条件


查询数据
List<Book> myList=DataSupport.findAll(Book.class);//查询表中所有信息
DataSupport.findFirst(Book.class);//查询表中第一条数据
DataSupport.findLast(Book.class);//查询表中最后一条数据
通过连缀查询
select()指定查询哪几列的数据
DataSupport.select("name","author").find(Book.class);
where()指定查询的约束条件
DataSupport.where("name=?","xxxx").find(Book.class);
order()指定结果的排序方式,用desc 或 asc
DataSupport.order("price desc").find(Book.class);//降序
limit()指定查询结果的数量
offset()指定结果的偏移量