GreenDao配置及使用
一:配置
1.在项目的build.gradle下加
dependencies {
//greenDao生产代码插件
classpath ‘org.greenrobot:greendao-gradle-plugin:3.2.2’ // add plugin
}
2.在Module下的build.gradle文件加
apply plugin: ‘org.greenrobot.greendao’ // apply plugin
android {
…
//greendao配置
greendao {
//数据库版本号,升级时修改
schemaVersion 1
//生成的DAO,DaoMaster和DaoSession的包路径。默认与表实体所在的包路径相同
daoPackage ‘com.example.xts.greendaodemo.db’
//生成源文件的路径。默认源文件目录是在build目录中的(build/generated/source/greendao)
targetGenDir ‘src/main/java’
}
}
dependencies {
//greenDAO配置
implementation ‘org.greenrobot:greendao:3.2.2’ // add library
implementation ‘org.greenrobot:greendao-generator:3.2.2’
}
- 配置完1后同步,在配置2,如果同步2的时候报
把项目的:
classpath ‘org.greenrobot:greendao-gradle-plugin:3.3.0’ // add plugin 3.2.2改成3.3.0
把Module的:
implementation ‘org.greenrobot:greendao-generator:3.3.0’ // 3.2.2改成3.3.0
*以上两步如果没有问题配置完成
二:使用
1.创建实体类
@Entity
public class Bean {
@Id
private Long id;//必须为Long类型,大写
private String date;
@Unique
private String key;
private int step;
@Transient//表示该字段不会插入数据库
....
}
2.创建一个自己的application,继承Application
public class App extends Application {
private static DaoSession daoSession;
@Override
public void onCreate() {
super.onCreate();
DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(this, "user.db");
DaoMaster daoMaster = new DaoMaster(devOpenHelper.getWritableDatabase());
daoSession = daoMaster.newSession();
}
public static DaoSession getSession(){
return daoSession;
}
}
3.创建一个工具类DbUtils
public class DbUtil {
static {
daoSession = App.getSession();
}
static DaoSession daoSession;
//插入
public static void insert(PhoneBean bean){
if(!queryOne(bean)){
daoSession.insert(bean);
}
}
//删除
public static void delete(PhoneBean bean){
if(queryOne(bean)){
daoSession.delete(bean);
}
}
//查询单个
public static boolean queryOne(PhoneBean bean){
PhoneBean unique = daoSession.queryBuilder(PhoneBean.class)
.where(PhoneBeanDao.Properties.Phone.eq(bean.getPhone()))
.unique();
return unique==null?false:true;
}
//查询所有
public static List<PhoneBean> queryAll(){
return daoSession.loadAll(PhoneBean.class);
}
}
4.在清单文件中配置自己的application
android:name=".ui.App"
5.在需要使用的地方直接调用即可
本文地址:https://blog.csdn.net/qq_46237697/article/details/109001407