一个上午都花在如何使用greenDAO上了.
在Android Studio中,新建Android Project,就叫DaoExample吧.
Project建好之后,当前只有一个module,如果是跟着Android Studio一路next下来的,当前的module就是app.首先来新建一个module,并且module类型为Java Library.名字以及class name可随意取,默认的就可以(lib, MyClass).添加greendao-generator:
compile 'de.greenrobot:greendao-generator:2.0.0'
接下来,打开MyClass.java, 添加main方法, 在main方法中加入以下代码
private static final String OUTPUT_PATH = "./app/src/main/src-gen"; public static void main(String args[]) throws Exception{ Schema schema = new Schema(1, "com.example.greendaoexample"); Entity note= schema.addEntity("Note"); note.addIdProperty(); note.addStringProperty("text").notNull(); note.addStringProperty("comment"); note.addDateProperty("date"); new DaoGenerator().generateAll(schema, OUTPUT_PATH); }
这一段代码会产生在 OUTPUT_PATH 中产生4个java文件. 分别为DaoMater.java,DaoSession.java,Note.java, NoteDao.java, 它们的包名是com.example.greendaoexample,这些文件位于./app/src/main/src-gen中.但是,现在还没有完成.打开lib module的build.gradle,添加一些语句,完成后会是这个样子:
apply plugin: 'java' apply plugin: 'application' mainClassName = "com.example.MyGreenDAOGenerate" def outputDir = "../app/src/main/src-gen" dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'de.greenrobot:greendao-generator:2.0.0' } task createDocs { def docs = file(outputDir) docs.mkdirs() }
关于lib module的配置已经完成了. 但是现在无法运行该module.也需要进行配置才可以让该module运行.现在在Run按钮旁边的module显示框中只能的看到app module.点击下拉的箭头,可以看到Edit Configurations,选择该选项,弹出module配置框.点击加号,选择Application.
名字可随意.Main Class选择lib module中的MyClass.Use classpath of module选择lib.点击OK.
最后, 在app module的build.gradle加入
sourceSets { main { java.srcDirs = ['src/main/java', 'src/main/src-gen'] } }
运行lib module就可以看到在app/src/main/src-gen中产生了前面说过的四个文件.