项目配置
grdle配置
在Android Studio的gradle配上
compile ‘de.greenrobot:greendao:1.3.7’
compile ‘de.greenrobot:greendao-generator:1.3.1’- 项目配置
注意,src-gen是我们新建一个文件夹,用来放GreenDao生成的文件
未完成该步骤之前,src-gen是空文件夹,我们需要新建一个包,在该包下新建一个Java文件,做初始化工作。
如图所示,我创建了名为’com.usst.chensl.introducdemo.db’的包,和名为’ExampleDaoGenerator’的Java文件。
ExampleDaoGenerator
文件如下
package com.usst.chensl.introducdemo.db;
import de.greenrobot.daogenerator.DaoGenerator;
import de.greenrobot.daogenerator.Entity;
import de.greenrobot.daogenerator.Schema;
/**
* 初始化工作
* Created by ChenSL on 2015/8/14.
*/
public class ExampleDaoGenerator {
private static void addTaskDetail(Schema schema) {
//指定实体类
Entity entity = schema.addEntity("User");
//添加id属性
entity.addIdProperty();
//添加列userId,指定非空,默认可为空
entity.addStringProperty("userId").notNull();
//添加列username
entity.addStringProperty("username");
//添加列age
entity.addIntProperty("age");
//添加列phone
entity.addStringProperty("phone");
}
public static void main(String[] args) throws Exception {
//第一个参数是数据库版本号,第二个参数是所在包名
Schema schema = new Schema(1, "com.usst.chensl.introductdemo.db");
addDetail(schema);
try {
//第二个参数是我们前面新建的空文件夹sec-gen,这里采用相对路径的写法
//'..'代表工程前一个目录,接着是工程名/app(AndroidStudio生成)/src-gen(自己建的)
new DaoGenerator().generateAll(schema, "../IntroducDemo/app/src-gen");
} catch (Exception e) {
e.printStackTrace();
}
}
}
Entity可以看作是一张表,它使用构造器模式来设计,可以指定某一列的各种数据库属性,例如非空,自增,升降序,主键等。
注意:必须要使用run main()这种方法,在AndroidStudio下直接对该文件右键即可选择run main(),之前LZ试过在onCreate()里跑结果报错
下面来看看初始化出来的东西:
user实体类,注释已经说明是GreenDao自动生成的。其实就跟自己建实体类一样,不过现在是代码自动生成
package com.usst.chensl.introductdemo.db; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. Enable "keep" sections if you want to edit. /** * Entity mapped to table USER. */ public class