关于GreenDao的使用
来源:互联网 发布:淘宝免费申请 编辑:程序博客网 时间:2024/05/22 13:45
1、添加依赖(目前是最新版本)
compile'org.greenrobot:greendao:3.2.0'compile'org.greenrobot:greendao-generator:3.2.0'
2、在项目的app中的build.grade中添加
apply plugin: 'org.greenrobot.greendao'greendao { //数据库的schema版本,也可以理解为数据库版本号 schemaVersion 4 //设置DaoMaster、DaoSession、Dao包名,也就是要放置这些类的包的全路径。 daoPackage 'cn.hnshangyu.testgreendao.greendao' //设置DaoMaster、DaoSession、Dao目录 targetGenDir 'src/main/java'}dependencies { compile 'org.greenrobot:greendao:3.2.0'}3、在项目的project中的build.grade中添加4、准备工作已完成,接下来就是使用了首先定义一个对象,给一些字段@Entitypublic class Student { @Id private Long id; private String name; private String couse; private int mathSoucre; private int englishSouce; private int chinaSouce;}
点击编译,这个时候AS会自动生成下面对数据库的操作类,以及补全Student类中属性的get和set方法
然后一般在MyApplication中对数据库进行一些初始化设置public class MyApplication extends Application { private DaoMaster.DevOpenHelper mHelper; private SQLiteDatabase db; private DaoMaster mDaoMaster; private DaoSession mDaoSession; public static MyApplication instances; @Override public void onCreate() { super.onCreate(); instances = this; setDatabase(); } public static MyApplication getInstances(){ return instances; } /** * 设置greenDao */ private void setDatabase() { // 通过 DaoMaster 的内部类 DevOpenHelper,你可以得到一个便利的 SQLiteOpenHelper 对象。 // 可能你已经注意到了,你并不需要去编写「CREATE TABLE」这样的 SQL 语句,因为 greenDAO 已经帮你做了。 // 注意:默认的 DaoMaster.DevOpenHelper 会在数据库升级时,删除所有的表,意味着这将导致数据的丢失。 // 所以,在正式的项目中,你还应该做一层封装,来实现数据库的安全升级。 mHelper = new DaoMaster.DevOpenHelper(this, "notes-db", null); db = mHelper.getWritableDatabase(); // 注意:该数据库连接属于 DaoMaster,所以多个 Session 指的是相同的数据库连接。 mDaoMaster = new DaoMaster(db); mDaoSession = mDaoMaster.newSession(); } public DaoSession getDaoSession() { return mDaoSession; } public SQLiteDatabase getDb() { return db; }}之后就可以直接来对数据库进行操作了对数据库进行插入操作
Student student = new Student((long)1,"chen","chinese",50,60,70);StudentDao mDao = MyApplication.getInstances().getDaoSession().getStudentDao();mDao.insertOrReplace(student);在这里要注意一下,插入操作也可以使用吗Dao.insert(student),但是这个时候如果你的主键ID是重复的话就会抛出异常,所以建议还是使用mDao.insertOrReplace(student)来操作。在使用的过程中,你突然想再增加一张表或者是一个字段,这个时候,你依然只是需要增加字段或者一个对象,然后编译,AS会自动补全对应的对这个表或字段的操作方法,不需要你去关心,个人在使用的时候,增加字段,再去运行这个时候是会抛出异常的,说你新加的字段或者表不存在,这个时候你就需要去更新数据库的版本了,也就是build.grade中的schemaVersion 4,这个时候就不会再有这个异常了。
阅读全文
1 0
- 关于greenDao的使用
- 关于GreenDao的使用
- 关于GreenDao的初步使用
- Android 关于greenDao的使用教程
- 关于第三方开源库GreenDao的使用心得
- 关于第三方开源库GreenDao的使用心得
- 关于GreenDao数据库的使用,所需要注意的坑
- greenDao的使用教程
- GreenDAO的简单使用
- GreenDao的使用
- GreenDao的使用
- GreenDao的使用
- GreenDao的使用
- greendao的使用
- greenDAO的使用
- GreenDao的使用心得
- Greendao的使用
- GreenDao的使用详解
- 边数限制最短路
- JSP内置对象
- ERROR: Can't get master address from ZooKeeper; znode data == null
- Android ViewPager+RecyclerView+StaggerLayoutManager瀑布流图片单选实现
- 利用域名在前端取图片
- 关于GreenDao的使用
- 重写(覆盖)、重载、多态
- 发光二极管电路
- Xutils请求数据imageloader加载图片+网络判断
- 关于Spring Data redis几种对象序列化的比较
- JavaIO 总结笔记<五> 打印流、Properties类、对象流、序列化
- 破解jquery.dataTables.editor 1.6.3
- Android串口通信:基本知识梳理
- UE4 VR项目中actor永远面向头显的蓝图