zoukankan      html  css  js  c++  java
  • greenDAO的使用

    一个上午都花在如何使用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中产生了前面说过的四个文件.

  • 相关阅读:
    C#实战Microsoft Messaging Queue(MSMQ)消息队列(干货)
    实现动态的XML文件读写操作(依然带干货)
    多线程下访问控件的方式(您一定会用到,附源码啦!)
    Microsoft.VisualBasic.dll的妙用(开发中肯定会用到哦)
    vue使用element-ui的el-input监听不了键盘事件解决
    vue强制刷新组件
    asp.net微信公众平台本地调试设置
    武大女硕士面试被拒,改简历冒充本科生找工作的感想(原创)
    完整的站内搜索Demo(Lucene.Net+盘古分词)
    ASP.NET多线程下使用HttpContext.Current为null解决方案
  • 原文地址:https://www.cnblogs.com/yaq812/p/4743017.html
Copyright © 2011-2022 走看看