LitePal学习笔记
来源:互联网 发布:网络信息发布平台 编辑:程序博客网 时间:2024/05/01 10:45
一、配置环境
1.添加依赖
dependencies { compile 'org.litepal.android:core:1.4.1'}
2.在assets文件夹中添加litepal.xml文件
<?xml version="1.0" encoding="utf-8"?><litepal> <dbname value="book_store"></dbname> <version value="1" ></version> <list> </list></litepal>
3.配置Application
修改AndroidManifest.xml
<application android:name="org.litepal.LitePalApplication" ...
二、创建数据库
1.定义一个javabean,Book类
package com.momo.litepaltest;import org.litepal.crud.DataSupport;/** * Created by Administrator on 2017/1/18. */public class Book extends DataSupport{ private int id; private String name; private String author; private int pages; private double price; public void setId(int id) { this.id = id; } public void setName(String name) { this.name = name; } public void setAuthor(String author) { this.author = author; } public void setPages(int pages) { this.pages = pages; } public void setPrice(double price) { this.price = price; } public int getId() { return id; } public String getName() { return name; } public String getAuthor() { return author; } public int getPages() { return pages; } public double getPrice() { return price; } @Override public String toString() { return "Book{" + "id=" + id + ", name='" + name + '\'' + ", author='" + author + '\'' + ", pages=" + pages + ", price=" + price + '}'; }}
2.在litepal.xml文件中添加mapping标签
<?xml version="1.0" encoding="utf-8"?><litepal> <dbname value="book_store"></dbname> <version value="1" ></version> <list> <mapping class="com.momo.litepaltest.Book"></mapping> </list></litepal>
3.使用Litepal.getDatabase()即可创建数据库。
4.更新时只需要直接修改Book类,并且修改litepal.xml文件中的version标签,将version加1。如果添加新的数据库,需要在list标签下继续创建一个mapping。
三、插入数据
1将javabean类继承自DataSupport。
public class Book extends DataSupport{ ......}
2.创建Book对象,调用book.save()方法将该条数据存入数据库中。
btn_insert.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Book book = new Book(); book.setName("Android第一行代码"); book.setAuthor("郭霖"); book.setId(15); book.setPages(650); book.setPrice(79.99); book.save(); Toast.makeText(MainActivity.this, "insert successed!", Toast.LENGTH_SHORT).show(); }});
四、更新数据
1.调用book.updateAll()方法。
btn_update.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Book newBook = new Book(); newBook.setPrice(20.00); newBook.setPages(200); newBook.updateAll("id = ?","5"); }});
2.updateAll()不加参数表示对所有元素执行更新操作。
3.将某列置为默认值
Book book = new Book();book.setToDefault("pages");book.updateAll();
将所有书的页数都置为0.
五、删除数据
1.调用DataSupport.delteAll()方法
btn_delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { DataSupport.deleteAll(Book.class,"id = ?" , "4"); Toast.makeText(MainActivity.this, "delete success", Toast.LENGTH_SHORT).show(); }});
2.deleteAll()不加参数表示删除所有元素
六、查询数据
1.查询所有记录DataSupport.findAll(Book.class);
btn_query.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { StringBuilder builder = new StringBuilder(); List<Book> bookList = DataSupport.findAll(Book.class); for(Book book: bookList){ builder.append(book.toString() + "\n"); } tv_data.setText(builder.toString()); Toast.makeText(MainActivity.this, "query result", Toast.LENGTH_SHORT).show(); }});
2.查询第一条记录
Book firstBool = DataSupport.findFirst(Book.class);
3.查找最后一条记录
Book lastBook = DataSupport.findLast(Book.class);
4.select查找固定列
List<Book> books = DataSupport.select("name","author").find(Book.class);
5.where用于条件查询
List<Book> books = DataSupport.where("pages > ?" , "400").find(Book.class);
6.order排序(desc从大到小,asc从小到大)
List<Book> books = DataSupport.order("price desc").find(Book.class);
7.limit限定查询记录数目
List<Book> books = DataSupport.limit(3).find(Book.class);
8.offset设置偏移量
List<Book> books = DataSupport.limit(3).offset(1).find(Book.class);
9.组合查询
List<Book> books = DataSupport.limit(3) .offset(1) .select("name","author") .order("price desc") .find(Book.class);
0 0
- LitePal学习笔记
- LitePal学习笔记
- LitePal学习笔记
- Litepal (数据库框架) 学习笔记
- [Android新手学习笔记36]-Storage-LitePal
- Android学习笔记——LitePal
- LitePal学习
- LitePal 学习
- Android数据库LitePal框架学习笔记(1)---数据库的adb操作以及LitePal使用入门
- LitePal学习小结 (一)
- LitePal学习小结 (二)
- LitePal学习总结 (三)
- LitePal学习总结 (四)
- LitePal学习总结 (五)
- LitePal学习总结 (六)
- LitePal学习总结 (七)
- LitePal学习总结 (八)
- LitePal源码学习开篇
- elasticsearch 第三篇(安装篇)
- 机器学习实战--KNN
- 硬盘与磁盘的盘片、盘面、磁道、扇区
- 文本规范化(字符串模拟)
- 【 BZOJ 3721】 PA2014 Final Bazarek 贪心
- LitePal学习笔记
- elasticsearch 第二篇(配置篇)
- 图像数据预处理
- request的set-getParameter及getAttribute
- 基础练习 十六进制转八进制
- 学校要选择一个地方作为超市的位置,学校每个有K个部门,每个部门去超市的频率不一样,要求在可以设置的地点中选择一个最优的地点
- 百练2790:迷宫
- maven常用命令
- POJ 2632-Crashing Robots(模拟-robot移动)