1.添加jar,拷贝DBUtil文件
2.创建bean,实现对表的创建
添加数据:一行搞定
DBUtil.getInstance(this, path).insert(student);
封装liteorm
public class DBUtil {
private static DBUtil manager;
private static final String DB_NAME = "remote.db";
private LiteOrm liteOrm;
private DBUtil(Context context) {
if (liteOrm == null) {
liteOrm = LiteOrm.newCascadeInstance(context, DB_NAME);
}
}
public static DBUtil getInstance(Context context) {
if (manager == null) {
synchronized (DBUtil.class) {
if (manager == null) {
manager = new DBUtil(context);
}
}
}
return manager;
}
/**
* 插入一条记录
*/
public <T> long insert(T t) {
return liteOrm.save(t);
}
/**
* 插入所有记录
*/
public <T> void insertAll(List<T> list) {
liteOrm.save(list);
}
/**
* 根据对象查询数据
*/
public <T> int update(T t) {
return liteOrm.update(t);
}
/**
* 查询所有数据
*/
public <T> int updateAll(List<T> list) {
return liteOrm.update(list);
}
/**
* 根据id查询
*/
public <T> T query(long id, Class<T> clazz) {
return liteOrm.queryById(id, clazz);
}
/**
* 查询所有
*/
public <T> List<T> queryAll(Class<T> cla) {
return liteOrm.query(cla);
}
/**
* 查询 某字段 等于 Value的值
*/
@SuppressWarnings("unchecked")
public <T> List<T> queryByWhere(Class<T> cla, String field, Object[] value) {
return liteOrm.query(new QueryBuilder(cla).where(field + "=?", value));
}
/**
* 查询 某字段 等于 Value的值 可以指定从1-20,就是分页
*/
@SuppressWarnings("unchecked")
public <T> List<T> queryByWhereLength(Class<T> cla, String field, Object[] value, int start, int length) {
return liteOrm.query(new QueryBuilder(cla).where(field + "=?", value).limit(start, length));
}
/**
* 删除一个数据
*/
public <T> void delete(T t) {
liteOrm.delete(t);
}
/**
* 删除所有数据
*/
public <T> void deleteAll(Class<T> clazz) {
liteOrm.deleteAll(clazz);
}
/**
* 删除集合中的数据
*/
public <T> void deleteList(List<T> list) {
liteOrm.delete(list);
}
/**
* 删除数据库
*/
public void deleteDatabase() {
liteOrm.deleteDatabase();
manager = null;
liteOrm = null;
}
}