Realm Java

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/11166066.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

入门

先决条件

  • Android Studio 1.5.1或更高版本
  • JDK 7.0或更高版本
  • 最新版本的Android SDK
  • Android API等级9或更高(Android 2.3及更高版本)

注意: Realm不支持Android之外的Java。我们不再支持Eclipse作为IDE; 请迁移到Android Studio。

安装

将Realm安装为Gradle插件。

步骤1:将类路径依赖项添加到项目级build.gradle文件。

buildscript {
    repositories {
        jcenter() } dependencies { classpath "io.realm:realm-gradle-plugin:5.12.0" } }

build.gradle此处查找项目级别文件:

项目级build.gradle文件

第2步:将realm-android插件应用到应用程序级build.gradle文件的顶部。

apply plugin: 'realm-android'

build.gradle此处查找应用程序级别文件:

应用程序级build.gradle文件

完成这两项更改后,只需刷新gradle依赖项即可。如果您从早期版本的Realm升级v0.88,则可能还需要清理gradle项目(./gradlew clean)。

build.gradle在此处查找两个已修改文件的示例:

您是否希望使用Realm Mobile Platform同步所有Realm数据库?所有与同步相关的文档已移至我们的平台文档中

其他构建系统

不支持Maven和Ant构建系统。我们正在跟踪在GitHub上支持它们的兴趣:

ProGuard配置作为Realm库的一部分提供。这意味着您无需向ProGuard配置添加任何Realm特定规则。

样品

Realm Java允许您以安全,持久和快速的方式有效地编写应用程序的模型层。这是它的样子:

// Define your model class by extending RealmObject
public class Dog extends RealmObject { private String name; private int age; // ... Generated getters and setters ... } public class Person extends RealmObject { @PrimaryKey private long id; private String name; private RealmList<Dog> dogs; // Declare one-to-many relationships // ... Generated getters and setters ... } // Use them like regular java objects Dog dog = new Dog(); dog.setName("Rex"); dog.setAge(1); // Initialize Realm (just once per application) Realm.init(context); // Get a Realm instance for this thread Realm realm = Realm.getDefaultInstance(); // Query Realm for all dogs younger than 2 years old final RealmResults<Dog> puppies = realm.where(Dog.class).lessThan("age", 2).findAll(); puppies.size(); // => 0 because no dogs have been added to the Realm yet // Persist your data in a transaction realm.beginTransaction(); final Dog managedDog = realm.copyToRealm(dog); // Persist unmanaged objects Person person = realm.createObject(Person.class); // Create managed objects directly person.getDogs().add(managedDog); realm.commitTransaction(); // Listeners will be notified when data changes puppies.addChangeListener(new OrderedRealmCollectionChangeListener<RealmResults<Dog>>() { @Override public void onChange(RealmResults<Dog> results, OrderedCollectionChangeSet changeSet) { // Query results are updated in real time with fine grained notifications. changeSet.getInsertions(); // => [0] is added. } }); // Asynchronously update objects on a background thread realm.executeTransactionAsync(new Realm.Transaction() { @Override public void execute(Realm bgRealm) { Dog dog = bgRealm.where(Dog.class).equalTo("age", 1).findFirst(); dog.setAge(3); } }, new Realm.Transaction.OnSuccess() { @Override public void onSuccess() { // Original queries and Realm objects are automatically updated. puppies

转载于:https://www.cnblogs.com/strengthen/p/11166066.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值