android平台Ormlite框架简易入门笔记
2016-01-24 22:29
645 查看
android平台Ormlite框架入门基础学习
刚刚android,迫不及待试着用轻量级数据库sqlite,那当然少不了看看其中的ORM框架。android常用的ORM框架有greendao和ormlite,简单得说区别就是ormlite基于java映射原理,使用简单,效率低;而greendao有自己的一套generator实现对象关联,运行效率很高,但是编程的学习成本也高。我选择Ormlite入手。
基础配置
先从官网下载ORMLITE框架开源jar包,导入到android工程中。创建bean类 关键:
类名前加@DatabaseTable(tableName = “表名”)
类内属性加@DatabaseField 可选(id=true)代表主键
注意至少有一个无参构造函数
@DatabaseTable(tableName = "User") public class User { @DatabaseField(id=true) private int id; @DatabaseField private String name; /**必备无参构造函数**/ User(){} public User(int id,String name){ this.id=id; this.name=name;
扩展工具
扩展OrmLiteSqliteOpenHelper类来链接数据库操作。重写oncreate 和onupgrade和平时扩展SQLiteOpenHelper一样
对表的操作要使用TableUtil类内嵌方法。
如 TableUtil.createTable(* * *)
TableUtil.dropTable(* * *)
另外还有SchemaUtil等工具
然后补充DAO对象获取与释放方法(DAO对象用来链接java类与数据库entry操作)
实例:
//获取dao方法 public Dao<User,Integer> getUserDao()throws SQLException{ if(userDao==null) userDao=getDao(User.class); return userDao; } //释放资源 @Override public void close() { userDao=null; super.close(); }
数据库配置文件(优化访问效率)
新建res/raw文件夹。新建一个配置文件生成类:
public class DatabaseConfigUtil extends OrmLiteConfigUtil { private static final Class<?>[] classes = new Class[] { //列出所有Bean类 User.class }; public static void main(String[] args) throws SQLException, IOException { //在指定的raw路径生成文件,事先要建好raw文件夹 writeConfigFile(new File("F:\\AndroidStudioProjects\\Dao1\\app\\src\\main\\res\\raw\\ormlite_config.txt"), classes); } }
接着在自定义的openhelper类中构造器中添加上面建好的配置文件ormlite_config
public DatabaseOpenHelper(Context context){ super(context,databaseName,null,1,R.raw.ormlite_config); }
CRUD操作
crud操作之前首先要获取dao对象:1 使用在之前写的helper类对象用相应的获取具体DAO的方法
2 使用DaoManager中的createDao方法
关于dao的使用参考官方文档Dao.html
dao对象.create(对象)
dao对象.deletebyid(id)
dao对象.update(对象)
数据库发生变化时刷新对象: dao.refresh(对象)
DAO对象本身也是一个迭代器,可用于遍历对象:
for (Account account : accountDao) {
System.out.println(account.getName());
} //此法必须遍历所有对象,不可以中途return,break等等,否则会导致数据库关联变弱。
查询:
对象=dao.queryforid(id)
对象数组=dao.queryforall()
long值 =dao.queryrawvalue(sql) eg.找最大值
GenericRawResult
复杂操作和性能优化需要深入研究ormlite框架的体系知识 ,可以阅读官方使用教程http://ormlite.com/docs/ormlite.pdf
相关文章推荐
- Android v7 Toolbar的使用
- Android Studio 单元测试
- Android之AndroidStudio使用
- Android技巧2:登录注册模块解决方案
- android camera HAL: 请求的创建和提交
- Nexus 5 Android 6.0.1刷机、Root
- android studio 中的 包解析失败 以及the selected device is incompatible
- android:View的setTag和getTag使用
- Android的Java层系统服务
- Android初级自学笔记—json 数据解析
- Android获取应用程序的版本名称和版本号
- 寒假练习一
- Android开发中Banner部分实现真正的无限轮播
- IPC机制---02 Android中的多进程模式
- android 2015 年最热门的 10 篇技术文章
- Android基础之AdapterView系列学习
- android_重写button样式
- Android内容提供者(Content provider)
- android View的相关知识点
- android149 360 程序锁输入密码