好长时间没有写关于Android方面的学习文章了,今天给大家带来的是堪称是一个可以替代SQLite以及ORMlibraries的轻量级数据库—Realm移动端数据库。
相比SQLite,Realm更快并且具有很多现代数据库的特性,比如支持JSON,流式api,数据变更通知,以及加密支持,这些都为安卓开发者带来了方便。
Ream提供了五种编程方式的实现。分别是Java,Objective C,Swift,React-Native,tamarin。在这里我着重介绍在Android中的使用。后面也会介绍在Swift中得使用。
1.先介绍一下打开数据Realm数据库的工具:Realm Browser可视化工具
Realm资源包中包含了一个很有用的实用工具,可以帮助我们更好地管理Realm数据库,那就是Realm Browser。Realm Browser可以让您轻松地读写Realm数据库(以.realm结尾),因此我们无需头疼如何去查看Realm专有数据库的逻辑结构以及其中的数据,可视化的操作就如同SQLite的其他数据库查看工具一样,十分简单、易用(虽然Realm Browser的功能还十分简陋,真的只能读写而已)。
2.Realm支持的数据类型
- 支持基本数据结构:boolean, byte, short, ìnt, long, float, double, String, Dateand byte[]
- 支持JSON等复杂的数据类型
3.Realm的官方名词
- Realm:Realm是框架的核心所在,是我们构建数据库的访问点,使用建造者模式构建对象。
- RealmObject:这是我们自定义的realm数据模型。创建数据模型的行为将会影响到数据库的结构。要创建一个数据模型,我们只需要继承RealmObject,然后设计我们想要存储的属性即可。
- RealmQuery(查询):要在数据库中检索信息,我们需要用到“检索”操作。如果需要检索更复杂的数据,那么还可以使用复合查询以及结果排序等等操作。
- RealmResults:这个类是执行任何查询请求后所返回的类,其中包含了一系列的Object对象。和List类似,我们可以用下标语法来对其进行访问,并且还可以决定它们之间的关系。不仅如此,它还拥有许多更强大的功能,包括排序、查找等等操作。
4、Realm在Android中的使用
4.1在项目的build.grade中配置下载库文件
在本案例中我使用的最新版本的1.0.0版本。
4.2创建数据库,获取去Realm
|
|
4.3创建一个RealmObject
只要继承了RealmObject类,任意JavaBean都能存储在Realm中。必须有一个默认构造器,成员变量有相应的getter/setter方法
|
|
4.4对数据Person进行增删改查操作
PersonDao.java
PersonDaoImp.java
4.5在Activity中简单调用
|
|
总结:Android中使用Realm数据库基本上就这几点步骤,这是个入门,更加复杂的操作,我在后面会慢慢的深入。