使用Greendao进行批量添加数据(Android Studio读取assets下的数据库文件)
来源:互联网 发布:手机可以做淘宝网店吗 编辑:程序博客网 时间:2024/05/01 04:43
当我们使用greendao进行批量数据添加的时候,可以使用greendao提供的insert()方法,这个方法的使用范围适合在插入一条或者几条数据,只要原因在于的是,当我们使用greendao提供的insert()方法的时候,此时是需要进行new操作的,当我们进行new操作的时候,此时程序在运行的时候,此时的系统是要给当前的程序提供很多的内存空间,所以,根据尽量减少程序运行内存的原则,我们在程序中进行少使用new关键字,只要一是用new关键字,那么程序出现的症状,最突出的就是程序变得很卡,或者是出现死机的现象。
在Android Studio中读取外部数据库文件,此时是将数据库文件放到的是assets目录下,注意的是,这里的assets目录是与java、res目录是同级的,所以,我们在创建目录的时候要特别注意。
当创建完assets目录后,我们就要进行通过I/O流实现读取assets下的数据库文件,这里注意的地方就是,assets下的数据库文件是这样的:
这里注意的地方就是数据库的名字,必须要将数据库的名字写全了,也就是说其名字的末尾要带上”.db”。
接下来我们就是要创建一个类,这个类的作用就是读取assets目录下的数据库文件,并将这个数据库文件写入到SDcard中,如果SDcard中存在,那么就打开数据库,如果SDcard中不存在,就将从assets中复制过去。
public classSQLdm {
String filePath ="data/data/showinfo.tongchuang.com.showinfo/databases/tongchuanghaiyang1234.db";
String pathStr = "data/data/showinfo.tongchuang.com.showinfo/databases";
SQLiteDatabase database;
public SQLiteDatabase openDatabase(Context context){
System.out.println("filePath:"+filePath);
File jhPath=new File(filePath);
if(jhPath.exists()){
return SQLiteDatabase.openOrCreateDatabase(jhPath,null);
}else{
File path=new File(pathStr);
if (path.mkdir()){
}else{
};
try {
InputStream is=context.getClass().getClassLoader().getResourceAsStream("assets/"+"tongchuanghaiyang1234.db");
FileOutputStream fos=newFileOutputStream(jhPath);
byte[] buffer=new byte[10240];
int count =0;
while((count = is.read(buffer))>0){
fos.write(buffer,0,count);
}
fos.flush();
fos.close();
is.close();
} catch (IOException e) {
e.printStackTrace();
return null;
}
return openDatabase(context);
}
}
}
使用SQLdm类,完成数据库的创建
SQLdm s = newSQLdm();
db =s.openDatabase(getApplicationContext());
daoMaster = newDaoMaster(db);
daoSession = daoMaster.newSession();
这样我们的数据库中的数据,就已经存在了我们的程序中了,那么此时就可以就可以进行增删改查操作了。
- 使用Greendao进行批量添加数据(Android Studio读取assets下的数据库文件)
- Android 读取assets的数据库文件
- 读取assets目录下的数据库文件
- Android开发系列(十七):读取assets目录下的数据库文件
- Android开发系列(十七):读取assets目录下的数据库文件
- Android Studio添加使用Assets
- Android Studio 读取Assets目录下的文件
- Android Studio中读取assets文件夹下的文件
- android studio 读取assets文件夹下的文件
- Android Studio 中使用assets目录读取失败的问题
- Android Studio下添加assets目录
- Android Studio下添加assets目录
- Android Studio下添加assets目录
- Android Studio下添加assets目录
- Android Studio下添加assets目录
- Android Studio下添加assets目录
- Android 使用assets下的数据库文件,号码归属地查询Demo
- 使用Android studio添加assets目录
- 软考网络规划设计师论文写作真题
- GreenDao框架使用
- Struts 2 的输入校验
- DBA_Oracle冷备份案例脚本本法(案例)
- Spring 的 AOP
- 使用Greendao进行批量添加数据(Android Studio读取assets下的数据库文件)
- Django数据表更改
- ASP.NET Web API(C#)实现简单增删改查
- 【WEB开发原理】servlet原理
- windows建立ftp站点-有重点
- 软考网络规划设计师考试要求
- eclipse resin4 配置preparing launch delegate 100%
- 点击Home健,退出程序,再点击图标,进入程序
- 排序(1)——冒泡排序及其优化