MiniOrm-For-Android極簡智能的 Android Orm 框架
MiniOrm-for-Android是什么?
MiniOrm-for-android 是一款簡單,只能,靈活的android ORM框架,完全基于對象進(jìn)行操作。主要幫助android程序員的快速開發(fā)。通過反射將查詢的數(shù)據(jù)智能的轉(zhuǎn)換成 Entity 。省去開發(fā)人員手動解析的時間。
功能特點:
-
小巧,類庫大小27k
-
快速,10000條數(shù)據(jù),時長3.6秒
-
使用簡單,支持實體類注解方式,除了實體類之外只需創(chuàng)建一個DAO就可以進(jìn)行操作。
-
支持原聲的sql語句操作
-
耦合性低
結(jié)構(gòu)模型:
-
類關(guān)系圖:
純java結(jié)構(gòu)設(shè)計,通過接口的設(shè)計,將上層業(yè)務(wù)和實際操作數(shù)據(jù)庫的部分進(jìn)行分離,開發(fā)者可以在此基礎(chǔ)上自行實現(xiàn)mysql等數(shù)據(jù)的支持。下面是java部分核心設(shè)計
接入類庫:
在項目的程序目錄build.gradle中加入
dependencies {
compile 'com.ml.miniorm:miniorm:1.1.8'
}
基本方法:
創(chuàng)建表:
StuDao stuDao=new StuDao(); stuDao.createTable();
新增:
Student student=new Student();
student.setAge(2);
student.setStuName("王小明");
new StuDao().save(student);
刪除:
//1. 根據(jù)主鍵刪除student.setId(2);new StudentDao().delete(student);
//2.根據(jù)其他屬性刪除
student.setStuName("kkkk");
student.setAge(2);
stuDao.delete(student);
//3.刪除全部 stuDao.deleteAll();
更新:
// (注意,需指定ID)
student.setId(2);
student.setStuName("kkkk");
stuDao.update(student);
查詢:
//全部 List<Student> list=stuDao.queryAll(); //query by id stuDao.queryById(1)||stuDao.queryById(“1”
精確條件查詢
可以寫sql語句 然后直接調(diào)用方法
teacherDao.executeQuery("select * from usertable",teacherDao.getQueryEntity(),teacherDao.getReflexEntity() );調(diào)用QueryBuilder//查詢 全部 性別為 女 List listaaa=teacherDao.getQueryBuilder().callQuery().queryAll().where(Where.handle().eq("sex","女")).executeQueryList();List<Teacher> listaaa=teacherDao.getQueryBuilder().callQuery().queryAll().where(Where.handle().and("sex","=","女")).executeQueryList(); //模糊查詢 List<CustomerBean> list = customerBeanDao.getQueryBuilder().callQuery().queryAll().where(Where.handle().and("userName", " like ", "%"+tiaojian+"%").or().and("company", " like ", "%"+tiaojian+"%").or().and("nickname", " like ", "%"+tiaojian+"%")).executeQueryList(); //對應(yīng)的 sql select * from CustomerBean where userName like '%你曾%' or company like '%你曾%' or nickname like '%你曾%' ; //根據(jù)主鍵分頁 int lastid = teacherDao.queryLastInsertId(); String table = teacherDao.getReflexEntity().getTableEntity().getTableName(); String column = teacherDao.getReflexEntity().getTableIdEntity().getColumnName(); List list1 = teacherDao.getQueryBuilder().callQuery().queryAll().where(Where.handle().and(column, "<=", lastid).and(column, ">", lastid -
評論
圖片
表情
