【关于本系列】

最近看了不少开源框架,网上的资料也非常多,但是我认为了解一个框架最好的方法就是实际使用。本系列博文就是带领大家快速的上手一些常用的开源框架,体会到其作用。

由于作者水平有限,本系列只会描述如何快速的使用框架的基本功能,更多的详细设置大家可以在这些项目的页面上找到。

【介绍】:

ORMLite是一款辅助开发数据库的框架,可以通过给实体配置标注来快速建立数据表,也可以通过其提供的DAO类中的方法来快速对数据库进行操作,如增删改查等。

【项目页面】:

http://ormlite.com/

【使用步骤】

1.从http://ormlite.com/releases/下载Android和Core的JAR包,导入项目中

2.建立一个实体类

3.给该实体类配置标注(表明,字段名,字段属性等)

4.创建一个openhelper类继承OrmLiteSqliteOpenHelper实现oncreate以及getDAO等方法

5.完成上述步骤后就可以使用我们的openhelper类获得DAO来进行操作了。

【代码】

实体类Person.java

@DatabaseTable(tableName = "person")//设置生成表名 person
public class Person {
@DatabaseField(generatedId = true)//设置生成id
private int Id;
@DatabaseField(columnName = "name")//设置字段名称
private String name;
public Person(){}
public Person(String s)
{
this.name = s;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

自定义OpenHelper类 OpenHelper.java

public class OpenHelper extends OrmLiteSqliteOpenHelper {
private Dao<Person, Integer> mPersonDao; public OpenHelper(Context context) {
super(context, "test", null, 1);//初始化,数据库名称为test
} @Override
public void onCreate(SQLiteDatabase sqLiteDatabase, com.j256.ormlite.support.ConnectionSource connectionSource) {
try {
TableUtils.createTable(connectionSource, Person.class);//根据配置好的实体类建表
} catch (SQLException e) {
e.printStackTrace();
}
} @Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, com.j256.ormlite.support.ConnectionSource connectionSource, int i, int i1) { } public Dao<Person, Integer> getPersonDao() throws java.sql.SQLException {//该方法用来返回DAO类
if (mPersonDao == null) {
mPersonDao = getDao(Person.class);
}
return mPersonDao;
}
}

测试类Test.java

public class Test extends AndroidTestCase {
public void testAdd()
{
Person p1 = new Person("u3");
OpenHelper helper = new OpenHelper(getContext());//新建一个OpenHelper对象
try {
helper.getPersonDao().create(p1);//添加一条记录
p1 = new Person("u31");
helper.getPersonDao().create(p1);//添加一条记录
p1 = new Person("u32");
testList();//查询并打出所有记录
} catch (SQLException e) {
e.printStackTrace();
}
}
public void testList()
{
OpenHelper helper = new OpenHelper(getContext());//建立OpenHelper对象
try {
List<Person> users = helper.getPersonDao().queryForAll();//通过DAO来查询所有的记录
Log.v("sk", users.toString());//打印在LOGO之中
} catch (SQLException e) {
e.printStackTrace();
}
}
}

【一个更复杂的例子】

以上就是ORMlite框架的简单用法了,但是这样的用法依然很简陋,如果大家想继续研究的话可以看一下这篇博客

Android 快速开发系列 ORMLite 框架最佳实践

http://blog.csdn.net/lmj623565791/article/details/39122981

【光速使用开源框架系列】数据库框架OrmLite的更多相关文章

  1. 自己动手写Android框架-数据库框架

    大家在工作中基本上都有使用到数据库框架 关系型:ORMLite,GreenDao 对象型:DB4O,Perst 这些数据库用起来都非常的简单,对于我们Android上来说这些数据库足够我们使用了,但是 ...

  2. 【开源】OSharp3.3框架解说系列:重新开源及3.3版本新特性

    OSharp是什么? OSharp是个快速开发框架,但不是一个大而全的包罗万象的框架,严格的说,OSharp中什么都没有实现.与其他大而全的框架最大的不同点,就是OSharp只做抽象封装,不做实现.依 ...

  3. Quartz.NET开源作业调度框架系列

    Quartz.NET是一个被广泛使用的开源作业调度框架 , 由于是用C#语言创建,可方便的用于winform和asp.net应用程序中.Quartz.NET提供了巨大的灵活性但又兼具简单性.开发人员可 ...

  4. Android数据库框架——ORMLite轻量级的对象关系映射(ORM)Java包

    Android数据库框架--ORMLite轻量级的对象关系映射(ORM)Java包 事实上,我想写数据库的念头已经很久了,在之前写了一个答题系统的小项目那只是初步的带了一下数据库,数据库是比较强大的, ...

  5. Android 数据库框架OrmLite的使用(一)

    在这里记录下最基本的用法,官网上可了解相关的介绍. 1.下载OrmLite jar 在下载android的:ormlite-android-4.48.jar和ormlite-core-4.48.jar ...

  6. Android 数据库框架ormlite

    Android 数据库框架ormlite 使用精要 前言 本篇博客记录一下笔者在实际开发中使用到的一个数据库框架,这个可以让我们快速实现数据库操作,避免频繁手写sql,提高我们的开发效率,减少出错的机 ...

  7. Android开发——使用LitePal开源数据库框架

    前言:之前使用Android内置的数据库,感觉一大堆SQL语句,一不小心就错了,很难受,学习了这个LItePal的开源数据库框架,瞬间觉得Android内置的数据库简直是垃圾般的存在 LitePal ...

  8. Android精通之OrmLite数据库框架,Picasso框架,Okio框架,OKHttp框架

    版权声明:未经博主允许不得转载 OrmLite基础知识 什么是OrmLite框架,在我没用这个框架时,不知道它有多好,用了才知道很方便哦,为了提供开发效率,Android开发者需要懂得运行多种框架进行 ...

  9. ORM数据库框架 SQLite ORMLite MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  10. Android数据库框架-----ORMLite关联表的使用

    上一篇已经对ORMLite框架做了简单的介绍:Android数据库框架-----ORMLite 的基本用法~~本篇将介绍项目可能会使用到的一些用法,也为我们的使用ORMLite框架总结出一个较合理的用 ...

随机推荐

  1. java调用cmd执行maven命令

    一.原理介绍 Java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令. cmd /c dir 是执行完dir命令后封闭命令窗口. cmd /k di ...

  2. MySQL auto_increment介绍 以及 查询和修改auto_increment的方法

    一.auto_increment使用方法 .创建table时设置auto_increment属性和初始值100 create table nonove ( id bigint unsigned not ...

  3. Kali Linux安装SSH Server

    Kali Linux默认并没有安装SSH服务,为了实现远程登录Kali Linux,我们需要安装SSH服务. 安装 OpenSSH Server # apt-get install openssh-s ...

  4. HihoCoder 1122二分图二 ---最大匹配之匈牙利算法

    二分图二•二分图最大匹配之匈牙利算法 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 上一回我们已经将所有有问题的相亲情况表剔除了,那么接下来要做的就是安排相亲了.因为过 ...

  5. rpm -Uvh 升级时的陷阱

    问题现象 用rpm -Uvh升级后,原先的一个软链接被删除了,而采用先rpm -e 卸载rpm包,再rpm -ivh 安装包的方法,这个软链接还在.这个软链接是在rpm包安装的时候建立,也只有在rpm ...

  6. Android Studio 打包及引用 AAR(可能是史上最详细的 )

    https://www.jianshu.com/p/1777a634db5e Android Library(AAR) 的好处 Android 库在结构上与 Android 应用模块相同.它可以提供构 ...

  7. jQuery火箭图标返回顶部代码

    在网上找来段使用jQuery火箭图标返回顶部代码,感觉比较酷,比较炫,大概样式如下, 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. ...

  8. 51nod 1965 奇怪的式子 —— min_25筛

    题目:http://www.51nod.com/Challenge/Problem.html#!#problemId=1965 推式子就同这里:https://www.cnblogs.com/yoyo ...

  9. A SQLiteConnection object for database '/data/data/.../databases/....db' was leaked!

      详细异常: A SQLiteConnection object for database '/data/data/.../databases/....db' was leaked!  Please ...

  10. Java Integer和String内存存储

    标签: java内存string 2016-01-10 12:51 1545人阅读 评论(2) 收藏 举报  分类: Java(7)  版权声明:本文为博主原创文章,未经博主允许不得转载. 先看代码: ...