ormlite数据库默认放在databases下,有时候可能需要使用预置好数据的数据库,可能就需要更改默认路径了。
1、继承OrmLiteSqliteOpenHelper:
public class SQLiteHelperOrm extends OrmLiteSqliteOpenHelper { public static final String DATABASE_PATH = Environment .getExternalStorageDirectory() + "/test.db"; @Override public synchronized SQLiteDatabase getWritableDatabase() { return SQLiteDatabase.openDatabase(DATABASE_PATH, null, SQLiteDatabase.OPEN_READWRITE); } public synchronized SQLiteDatabase getReadableDatabase() { return SQLiteDatabase.openDatabase(DATABASE_PATH, null, SQLiteDatabase.OPEN_READONLY); }
代码说明:
注意这里覆盖了getWritableDatabase和getReadDatabase,并且没有super。
2、Application里面创建数据库
new File(SQLiteHelperOrm.DATABASE_PATH);
File f = if (!f.getParentFile().exists()) {
f.getParentFile().mkdirs();
}
if (!f.exists()) {
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase( SQLiteHelperOrm.DATABASE_PATH, null); SQLiteHelperOrm orm = new SQLiteHelperOrm( this); orm.onCreate(db); db.close(); }注意close掉数据库。
原文出处:
博客园:http://www.cnblogs.com
农民伯伯:
但是本人发现在Application里面的代码有点问题,运行报错所以做了一些修改,欢迎指正