创建数据库
创建一个数据库工厂类,用于创建数据库操作对象和表的Dao对象
//数据库工厂类
public class BaseDaoFactory {
//该对象是单例的
private static final BaseDaoFactory instance = new BaseDaoFactory();
//数据库对象
private SQLiteDatabase sqLiteDatabase;
//定义建数据库的路径
//路径可以写在data/data下,优点是数据保密;缺点是app卸载数据丢失
//写在sd卡中,优点是app卸载数据不会丢失;缺点是数据缺乏保密性
private String sqliteDatabasePath;
//单例
public static BaseDaoFactory getInstance() {
return instance;
}
//构造方法
public BaseDaoFactory() {
//新建数据库
// Environment.getExternalStorageDirectory()+ File.separator;
//写在data/data路径下
sqliteDatabasePath = "data/data/com.xxx.greendao/test_1.db";
//创建数据库操作对象
sqLiteDatabase = SQLiteDatabase.openOrCreateDatabase(sqliteDatabasePath, null);
}
创建表
定义一个创建和操作的Dao的接口(面向接口编程)
public interface IBaseDao<T> {
//插入
long insert(T entity);
//更新
long update(T entity,T where);
//删除
int delete(T where);
//查询全部
List<T> queryAll();
//条件查询
List