1:在project (build.gradle)版本号后
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2' // add plugin
——同步
2.在Module (build.gradle)第二行添加
apply plugin: 'org.greenrobot.greendao' // apply plugin 步骤3
——同步
3.在Module (build.gradle)'proguard-rules.pro'两个大括号后添加
greendao {
//数据库版本号,升级时修改
schemaVersion 1
//生成的DAO,DaoMaster和DaoSession的包路径。默认与表实体所在的包路径相同
daoPackage 'com.example.dao.db'
//生成源文件的路径。默认源文件目录是在build目录中的(build/generated/source/greendao)
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
——同步
4.在Module (build.gradle)添加依赖
// //greenDAO配置 步骤4
implementation 'org.greenrobot:greendao:3.2.2' // add library
implementation 'org.greenrobot:greendao-generator:3.2.2'
——同步
5.创建Bean
添加注释@Entity @Id
编译 得到 @Generated(hash = 1644894640) @Generated(hash = 1438189893) 随机
※数据库※
1.GreenDao三步走一样
2.判断是否有值
privatebooleanisHased(SqlBean sqlBean){List<SqlBean>list=sqlBeanDao.queryBuilder().where(SqlBeanDao.Properties.Title.eq(sqlBean.getTitle())).list();if(list.size()>0){returntrue;}else{returnfalse;}}
3.新的增删改查
publiclonginsert(SqlBean sqlBean){if(!isHased(sqlBean)){longl=sqlBeanDao.insertOrReplace(sqlBean);returnl;}else{return-1;}}publicbooleandelete(SqlBean sqlBean){if(isHased(sqlBean)){sqlBeanDao.delete(sqlBean);returntrue;}else{returnfalse;}}publicList<SqlBean>query(){List<SqlBean>list=sqlBeanDao.queryBuilder().list();returnlist;}publicbooleanupdate(SqlBean sqlBean){if(isHased(sqlBean)){sqlBeanDao.update(sqlBean);returntrue;}else{returnfalse;}}
4.懒加载
publicvoidsetUserVisibleHint(booleanisVisibleToUser){super.setUserVisibleHint(isVisibleToUser);if(isVisibleToUser){initData();}else{if(lists!=null&&lists.size()>0){lists.clear();}}}
5.在适配器里可以写一个方法,fragment直接调方法即可
publicvoidupdataData(List<SqlBean>data){lists.clear();if(data!=null){lists.addAll(data);}notifyDataSetChanged();}