Android ORM妗嗘灦浠嬬粛涔媑reenDao閰嶇疆(涓€)

greenDao鐨勯厤缃?鏂规硶涓€)

  1. 鍒涘缓涓€涓猘ndroid搴旂敤,鍦ㄥ簲鐢ㄧ殑build鏂囦欢涓坊鍔犱緷璧栧寘銆?/li>
dependencies {    ...    compile 'org.greenrobot:greendao:3.1.0'}

2.鍦ㄩ」鐩腑鐨刴ain鐩綍涓嬫柊寤轰竴涓猨ava-gen鐩綍锛屼笌java鐩綍骞崇骇銆?/p>

3.鍦ㄥ簲鐢ㄧ殑build鏂囦欢涓紝鍏宠仈銆?/p>

sourceSets{       main{           java.srcDirs=['src/main/java','src/main/java-gen']       }   }

濡傚浘鎵€绀猴細

4.鍒涘缓涓€涓猨ava椤圭洰,鍦╦ava椤圭洰娣诲姞渚濊禆搴揫娉細java椤圭洰鐨勫垱寤篯

compile 'org.greenrobot:greendao-generator:3.1.0'

濡傚浘鎵€绀?/em>


5.鍦╦ava椤圭洰涓殑main鏂规硶涓啓濡備笅浠g爜锛?/p>

import org.greenrobot.greendao.generator.DaoGenerator;import org.greenrobot.greendao.generator.Entity;import org.greenrobot.greendao.generator.Schema;public class MyClass {    private static final int VERSION = 1;    private static final String ENTITY_PACKAGE = "com.zhang.db.entity";    private static final String DBO_PACKAGE = "com.zhang.db.dao";    private static final String PATH = "C:\\MyWorkSpace\\Demo2\\greendao\\src\\main\\java-gen";    private static final String BASE = "BaseModel";    private static final String BASE_DAO = "BaseDao";    private static final String MODEL="Model";    private static final String MODEL_DAO="ModelDao";    private static final String MODEL_TABLE_NAME="tb_model";    public static void main(String[] args) {        Schema schema = new Schema(VERSION, ENTITY_PACKAGE);//璁剧疆鐗堟湰鍙凤紝瀹炰綋鍖呭悕(model鎵€鍦ㄧ殑鍖?        schema.setDefaultJavaPackageDao(DBO_PACKAGE);//璁剧疆Dao灞傛墍鍦ㄧ殑鍖?/span>        createBase(schema);        createModel(schema);    }    private static void createBase(Schema schema) {        Entity entity = schema.addEntity(BASE);        entity.addIdProperty().unique().autoincrement();        entity.addStringProperty("desc");        entity.setClassNameDao(BASE_DAO);        try {            new DaoGenerator().generateAll(schema, PATH);        } catch (Exception e) {            e.printStackTrace();        }    }    private static void createModel(Schema schema) {        Entity entity =schema.addEntity(MODEL);//璁剧疆瀹炰綋绫荤殑绫诲悕锛堝氨鏄疢odel绫伙級锛屽鏋滀笉璁剧疆setTableName()锛岃〃绀虹被鍚嶅氨鏄〃鍚?/span>        entity.addIdProperty().unique().autoincrement();//涓婚敭锛屽敮涓€锛岃嚜澧?浼氱敓鎴愮浉搴旂殑娉ㄨВ)        entity.addStringProperty("name").notNull();//璁剧疆瀛楁涓嶄负null        entity.addIntProperty("age");//琛ㄤ腑鐨勫瓧娈靛悕        entity.addLongProperty("createTime");//琛ㄤ腑鐨勫瓧娈靛悕        entity.setClassNameDao(MODEL_DAO);//璁剧疆Dao鐨勫疄浣撶被鐨勫悕绉?/span>        entity.setTableName(MODEL_TABLE_NAME);//璁剧疆鏁版嵁搴撹〃鍚?/span>        try {            new DaoGenerator().generateAll(schema,PATH);//PATH灏辨槸android椤圭洰涓殑java-gen鐩綍鐨勭粷瀵硅矾寰勶紝閫氳繃Dao鐨勭敓鎴愬櫒鐢熸垚鏁版嵁        } catch (Exception e) {            e.printStackTrace();        }    }}

6.鎵цjava椤圭洰锛屾垚鍔熷悗浼氬湪鎺у埗鍙版墦鍗發og锛屽悓鏃跺湪android椤圭洰鐨刯ava-gen鐩綍鐢熸垚濡備笅浠g爜锛?/p>


buildscript { repositories { mavenCentral() } dependencies { classpath 'org.greenrobot:greendao-gradle-plugin:3.1.0' }}apply plugin: 'org.greenrobot.greendao'dependencies { ... compile 'org.greenrobot:greendao:3.1.0'}greendao { // 鏁版嵁搴搒chema鐗堟湰锛屼篃鍙互鐞嗚В涓烘暟鎹簱鐗堟湰鍙? schemaVersion 1 // 璁剧疆DaoMaster 銆丏aoSession銆丏ao鍖呭悕 daoPackage 'www.weshared.db.dao' // 璁剧疆DaoMaster 銆丏aoSession銆丏ao鐩綍 targetGenDir 'src/main/java' // 璁剧疆鐢熸垚鍗曞厓娴嬭瘯鐩綍 // targetGenDirTest 'xx/xx/xx' // 璁剧疆鑷姩鐢熸垚鍗曞厓娴嬭瘯鐢ㄤ緥 // generateTests }

2.鍦ㄩ」鐩腑鍒涘缓涓€涓猨avabean绫伙紝鍦ㄨ绫讳笂闈娇鐢ˊEntity娉ㄨВ锛岀劧鍚庡湪make project銆?
鍏蜂綋鎿嶄綔濡備笅鍥撅細

make project涔嬪悗鐢熸垚鐨勬枃浠跺強鐩綍

更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. Android MPAndroidChart超漂亮图表框架
  2. Android(安卓)Studio 编译慢解决方法
  3. 总结的Android中surfaceView清屏的方式。
  4. android百度地图(二)之定位
  5. android.intent.action.MEDIA_MOUNTED广
  6. Android 内存泄漏检测之Profiler
  7. Android中的数据库——SQLite
  8. Android之开发BLE 详细步骤
  9. Android 微博登录
  10. 2011.06.03(2)——— android 1.6 launcher