【光速使用开源框架系列】数据库框架OrmLite
【关于本系列】
最近看了不少开源框架,网上的资料也非常多,但是我认为了解一个框架最好的方法就是实际使用。本系列博文就是带领大家快速的上手一些常用的开源框架,体会到其作用。
由于作者水平有限,本系列只会描述如何快速的使用框架的基本功能,更多的详细设置大家可以在这些项目的页面上找到。
【介绍】:
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
-----人若无名,则可专心练剑