一、assets\litepal.xml 样式
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<!--数据库名:demo 文件路径:data/data/项目包名/database/demo.db--!>
<dbname value="demo" ></dbname>
<version value="1" ></version> <!--数据库版本--!>
<!--表对象实体类,表名:tab1、tab2--!>
<list>
<mapping class="com.luoyang.tabentry.Tab1"></mapping>
<mapping class="com.luoyang.tabentry.Tab2"></mapping>
</list>
</litepal>
二、表对象实体类 Tab1.java
注意:
1. 表对象实体需要 extends DataSupport;
2. 源数据里有“id”字段,将此字段重命名免冲突。因为SQLite会有一个自增int型 id 字段,冲突将导致建表失败或存储失败;
3. getXXX()/setXXX()方法建义用IDE快速生成,避免手写错误。
package com.luoyang.tabentry;
import org.litepal.crud.DataSupport;
public class Tab1 extends DataSupport {
/**源数据的id*/
private int myId;
private String name;
public int getMyId() {
return myId;
}
public void setMyId(int myId) {
this.myId = myId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
三、AndroidManifest.xml配置
application 下添加android:name=”org.litepal.LitePalApplication”即可,如自定义application,可使自定义application extends LitePalApplication
<manifest>
<application
android:name="org.litepal.LitePalApplication"
...
>
...
</application>
</manifest>
四、LitePal 表数据操作
增
//保存一条到数据库 Tab1 tab=new Tab1(); tab.setMyId(123); tab.setName("luoyang"); tab.save(); //保存多条数据 List<Tab1> list=new ArrayList<Tab1>(); for(int i = 0; i <10; i++){ Tab1 mTab=new Tab1(); mTab.setMyId(1); mTab.setMyId("luoyang"+i); list.add(mTab); } DataSupport.saveAll(list);
删、改、查 都有相应的 delete() /deleteAll(),update()/updateAll(),find()/findAll()方法;