Realm数据库学习之快速入门
来源:互联网 发布:怎样开通淘宝客 编辑:程序博客网 时间:2024/05/16 12:20
build.gradle配置
顶层build.gradle
buildscript { repositories { jcenter() } dependencies { classpath "io.realm:realm-gradle-plugin:1.2.0" }}
app模块中的build.gradle
apply plugin: 'realm-android'
任何数据库都无非是CRUD的操作,也就是为了增、删、改、查的使命。
相对于传统的原生的Sqlite开发,Realm的API使开发者显得轻松自在。
初始化
使用Realm需要配置RealmConfiguration.代码很简单如下:
Real mRealm = Realm.getInstance(new RealmConfiguration.Builder(this) .name("test") .build());
1增加数据
1.1创建模型
创建模型只需要定义一个类继承自RealmObject
public class Apple extends RealmObject { private int id; private String color; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } @Override public String toString() { return "Apple{" + "id=" + id + ", color='" + color + '\'' + '}'; }}
1.2保存数据
保存一个java类数据到Realm,只需调用它的createObject方法。
Realm保存数据的示例代码如下:
mRealm.executeTransaction(new Realm.Transaction() { @Override public void execute(Realm realm) { Apple mApple = mRealm.createObject(Apple.class); mApple.setId(1); mApple.setColor("red"); } });
executeTransaction()打开一个事务,这是为了保证往Realm增加数据时,数据的一致性。
当调用createObject()的时候,数据对象就已经保存在Realm中了,是不是特别简单?
2查询数据
查询的结果保存在RealmResults对象中
示例代码:
final RealmResults<Apple> realmResults = mRealm.where(Apple.class).findAll();for(Apple apple:realmResults){ Log.d(TAG, "query "+apple.toString());}
3删除数据
Realm支持从查询的结果当中删除某一项或者全部项
final RealmResults<Apple> realmResults = mRealm.where(Apple.class).findAll();mRealm.executeTransaction(new Realm.Transaction() { @Override public void execute(Realm realm) { // remove single match realmResults.deleteFirstFromRealm(); realmResults.deleteLastFromRealm(); // remove a single object Apple dog = realmResults.get(5); dog.deleteFromRealm(); // Delete all matches realmResults.deleteAllFromRealm(); } });
4更新数据
Realm更新数据十分及时,只要在查询的结果集中找出相应的数据项然后进行相关的更新,数据就更新到了Realm.
mRealm.executeTransaction(new Realm.Transaction() { @Override public void execute(Realm realm) { Apple apple = realm.where(Apple.class).findFirst(); //已经更新 apple.setColor("yellow"); } });
了解了增、删、改、查的功能后,我们就能用Realm进行简单的数据库开发。
后面的文章我非讲解它更高级的特性和用法。
0 0
- Realm数据库学习之快速入门
- Android数据库之Realm快速入门教程
- 数据库简单使用之Realm入门
- Realm快速入门攻略
- Realm for Android 快速入门
- Realm for Android快速学习
- 数据存储之Realm数据库
- android之Realm数据库使用
- Android应用之Realm数据库
- Realm数据库 从入门到“放弃”
- 移动端数据库神器-Realm 开始代码之旅(入门二)
- RapidJS学习之快速入门
- Git学习之快速入门
- Realm入门
- iOS开发之Realm数据库第一篇
- 安卓数据库之 Realm for Androd
- 主流NOSQL数据库之MongoDB快速入门
- Realm数据库
- 梳理面试中遇到的HTTP协议相关的问题和知识
- 安装opencv3 for python3
- 常见票据辨别真伪的方法
- CSS3制作圆角图片和椭圆形图片
- 皆大欢喜的加薪
- Realm数据库学习之快速入门
- 我承认我手贱: 升级 xcode
- Accp 7.0 第14章 示例5 仅供参考
- ken\trade
- 常用的 js 代码梳理
- [置顶] Windows下DLL编程技术及应用
- Synthesis of Gold Nanorods
- 浅析 Linux 初始化 init 系统,Systemd
- [置顶] EXT/FCKEditor 集成 -- AJAX UI -- 一种web开发的新的思维