GreenDao的簡單使用說明(一)android studio中引入GreenDao

sixstars 8年前發布 | 71K 次閱讀 Android開發 移動開發

來自: http://blog.csdn.net//chenguang79/article/details/50433152


        GreenDao是現在大家評論說在android開發中,數據庫框架效率最好的一個.以前一直在使用原生的,雖然感覺什么自己都可以控制,可是寫起來,改起來有點惡心,所以正好借個機會,來使用一下GreenDao.我使用的開發工具是android studio.

        GreenDao說實話,它在引入的時候有點惡心,不像別的第三方框架,只要引入一個compile 'XX.XXX.1.0'這樣,就可以使用了,它不行.所以今天我就把在android studio中如何引入做一個記錄.
       我們先去https://github.com/SureCase/GreenDaoForAndroidStudio上把下載它的代碼.
      然后我們開始進行配置
     1, 在/app/src/main/下建立文件夾java-gen,這個文件夾是與java平級的,當然了.我使用的是project視圖.如下圖:

      

         為什么要起一個名字叫java-gen的文件夾名呢.這里我們留一個疑問,一會就會知道了
         2, 打開app文件夾下的build.gradle文件,在里面添加
            sourceSets {
                 main {
                       java.srcDirs = ['src/main/java', 'src/main/java-gen']
                 }
           }
        這句話的意思就是把java-gen文件夾下的java文件也歸入srcDir中,這是因為GreenDao的邏輯是通過其提供的一套java se代碼配置后自動在java-gen生成對應的文件,DaoMaster.java,DaoSession.java,**DAO.java這三個文件,我們在程序中主要是調用這里面的類來操作數據庫的.
        現在有點明白為什么我們要建一個叫java-gen的文件夾了吧,后面我們還會看到.
        3,還是在這個build.gradle文件里,引入dependencies
           dependencies {
                compile 'de.greenrobot:greendao:1.3.7'
           }
          build.gradle文件如下圖:

         OK,基礎配置已經完成了,不要以為這樣你就可以使用了,這是不可能的,我們剛才說了,它需要運行它的java se文件來生成三個java文件的,還記得一開始我們下載的文件嗎,好的解壓它,找到里面的MyDaoGenerator文件夾,它把復制到工程當中,位置就是根目錄下,它要與app文件夾是同級的.如下圖:

        

        復制完成之后,我們要把MyDaoGenerator include到工程當中,打開根目錄下面的setting.gradle文件,在里面添加上':MyDaoGenerator ',如下圖:

      

      這些設置完成之后,我們就要設置MyDaoGenerator文件夾里面的build.gradle文件了,要為它設置一下輸出路徑,還記得java-gen嗎,這個文件夾的名字,就是在這里設置的,我們使用了系統默認給出的,主要是為了別人看著方便,自己也方便,修改代碼如下:
    def outputDir = "../app/src/main/java-gen"
    整體代碼:如圖

   

          看到了吧,它給的例子里面,沒有def,如果不加這個,編譯會一直出錯,上網查了一下,才發現是這里的問題,坑爹啊.
    OK,到了這里,我們的配置算是配置完了,整個GreenDao框架的環境算是架上了.不對吧,這里好像少了點什么,對的,三個文件還沒有呢,而且java-gen文件夾還是空的,這怎么用啊.下面我們先來生成一下這三個文件.
    1, 在MyDaoGenerator中,/src/main/java/pl.surecase.eu中打開MyDaoGenerator.java文件,我們在這里修改一下,
        
      

public class MyDaoGenerator {

          public static void main(String args[]) throws Exception {
                //初始化一下數據庫
                //第一個參數是版本號,第二個參數是為你生成的bean類放的文件夾名
            Schema schema = new Schema(1, "greendao");
                //設置一下生成的三個java文件的目錄
            schema.setDefaultJavaPackageDao("com.guangda.dao");

                //建立一個表
            Entity userBean = schema.addEntity("Users");
                //此行可有可無,就是對表進行重命名
            userBean.setTableName("Users");
                //此行被注,因為加上引行,下面的字段總會少一個.不知道為什么
            //userBean.addLongProperty("id").primaryKey().index().autoincrement();
                //建立自增的主鍵
            userBean.addIdProperty();
            userBean.addStringProperty("uSex");
            userBean.addStringProperty("uTelphone");
            userBean.addStringProperty("uAge");
            userBean.addStringProperty("uName");
            new DaoGenerator().generateAll(schema, args[0]);
           }
        }



       在這里說明一點,如果我們要對數據庫里面的表字段進行修改,只要將版本號,改高一級,然后在
       new DaoGenerator().generateAll(schema, args[0]);前面再加上新字段再重新生成一下就OK了.
      好,設置完這個,讓我們來生成一個吧.
      選擇Gradle面板,點上面的刷新按鈕,將工程刷新出來,然后選擇:MyDaoGenerator->Tasks->application雙擊下面的run.
      如下圖:

    

      等運行完了,就會發現在java-gen文件夾下已經生成了所需求的代碼.
      如下圖:

       OK了,到此GreenDao在android studio中的配置算是設置好了.下一節,我們來看一下,如何使用它.

 本文由用戶 sixstars 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!