android中的orm框架,一行代码就可以进行增删改查;支持事务,默认关闭;可通过注解自定义表名,列名,外键,唯一性约束,NOT NULL约束,CHECK约束等(需要混淆的时候请注解表名和列名)等等。
android有一个内置数据库Sqlite 数据库,想要实现数据库的创建要继承SQLiteOpenHelper类覆写onCreat的方法进行数据的创建;而且还要另外创建一个数据库操作类,进行对数据库的增删改查,在没有了解 DbUtils之前呢,也习惯了这种数据库的处理数据的方式,在了解熟悉了DbUtils之后,发现这种方式特别的繁琐麻烦。一下是对DbUtils的详解:
一。创建数据库
1
2
3
4
|
DbUtils db=DbUtils.create(MainActivity. this );
Child child = new Child();
db.save(child); |
这只要三行代码就完成了数据库的创建及数据的插入工作。这里需要注意的是Child对象必须有Id属性,或者有通过@Id注解的属性。
db.save(child);//则表示插入一条数据对象
查询操作,分别是按条件查询,与查询所有数据
1
2
3
4
5
6
|
List<Child> childrens = db.findAll(Selector.from(Child. class ).where(
"id" , "<" , 2 ));
Child children = db.findFirst(Selector.from(Child. class ).where(
"id" , "=" , "4" ));
List<Child> children=db.findAll(Child. class );
|
删除操作按条件删除或者删除所有
1
2
3
4
5
6
|
List<Child> child = dbUtils.findAll(Selector.from(Child. class ));
dbUtils.delete(child.get( 0 ));
dbUtils.deleteAll(child); dbUtils.deleteById(Child. class , WhereBuilder.b( "age" , "=" , 20 ));
dbUtils.dropTable(Child. class );
dbUtils.dropDb(); |
修改操作
1
2
3
4
|
Child child = new Child();
child.setId( "1" );
child.setName( "lisi" );
db.update(child); |
通过以上的代码分析与Sqlite数据操作相比较,可明显比较出其的孰优劣汰。DbUtils操做数据库直接调用内置方法就可以,不用像Sqlite数据库那样在新建的操作类中定义其数据库的增删改查的方法。