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