1.导依赖
在Project里
dependencies {
classpath ‘org.greenrobot:greendao-gradle-plugin:3.2.2’
}
2.在module.app
最上面添加 apply plugin: ‘org.greenrobot.greendao’
在android外面添加
greendao {
schemaVersion 1 //数据库版本号
daoPackage ‘com.yy.greendao1.model.db’
// 设置DaoMaster、DaoSession、Dao 包名
targetGenDir ‘src/main/java’//设置DaoMaster、DaoSession、Dao目录
generateTests false //设置为true以自动生成单元测试。
targetGenDirTests ‘src/main/java’ //应存储生成的单元测试的基本目录。默认为 src / androidTest / java。
}
3.在dependencies{
implementation ‘org.greenrobot:greendao-generator:3.2.2’
implementation ‘org.greenrobot:greendao:3.2.2’
}
4.创建bean类
@Entity
public class Student {
@Id(autoincrement = true)
private long id;
@Unique
int studentNo;//学号
int age; //年龄
String telPhone;//手机号
String sex; //性别
String name;//姓名
String address;//家庭住址
String schoolName;//学校名字
String grade;//几年
在build里 点击make project 就会生成三个类
5在MyApplication里 创建数据库 记得在清单文件里注册
private void initGreenDao() {
DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(this, “test1.db”);
SQLiteDatabase db = helper.getWritableDatabase();
DaoMaster daoMaster = new DaoMaster(db);
daoSession = daoMaster.newSession();
}
private DaoSession daoSession;
public DaoSession getDaoSession() {
return daoSession;
}
6.写greenDaoUtils类
public GreenDaoUtils(Context context){
daoSession = ((MyApplication) context.getApplicationContext()).getDaoSession();
}
public void insert(){
for (int i=0;i<100;i++){
Student student = new Student();
student.setStudentNo(i);
int age = new Random().nextInt(10) + 10;
student.setAge(age);
student.setTelPhone(“123456”);
String chineseName =“啦啦”+i;
student.setName(chineseName);
if (i % 2 == 0) {
student.setSex(“男”);
} else {
student.setSex(“女”);
}
student.setAddress(“北京”);
student.setGrade(String.valueOf(age % 10) + “年级”);
student.setSchoolName(“八维”);
daoSession.insertOrReplace(student);//插入或替换
}
}
public List queryAll(){
List students = daoSession.loadAll(Student.class);
for (Student s : students
) {
Log.e(“myMessage”,""+s.getName());
}
return students;
}
7.然后在MainActivity里初始化utils类
GreenDaoUtils greenDaoUtils = new GreenDaoUtils(this);
greenDaoUtils.insert();
greenDaoUtils.queryAll();