Realm数据库

概念

  • 是直接在移动设备中运行的数据库
  • 它并没有基于任何现成的数据库,他是一个重零开始研发的数据库
  • 不需要sql语句就可以操控它。直接把一个对象存储在磁盘中,所以它能非常快的从内存到磁盘操作对象。Realm是一个直接存储的对象,它不需要把数据再转化为对象操作,所以他也不需要去使用om框架,因为它本身就可以执行类似于om的操作
  • 同时支持Java,Object-C,swift,JavaScript等,支持IOS,Android,JavaScript等平台

Realm数据模型

  • 一个模型表示一张表,模型中的每个字段就是表示表中的每个列
  • 每个数据模型都要继承RealmObject类,没有继承的就不会被当成Realm的数据模型
  • 模型实时自动更新(不是指模型结构会自动发生改变,而是指我们的模型类,也就是继承自RealmObject的类,它会自动更新到底层数据的映射视图,对于数据的改动,会及时的反映到相关的对象或查询结果之中)

Realm 事务

  • 所有会使数据发生变化的操作必须在事务中进行。保证数据安全,数据一致性
  • 事务分为同步事物和异步事务两种,两种事务共有三种写法

引用计数
内存管理机制,系统将资源(对象,内存,磁盘空间)的被引用次数保存起来,当被引用次数为0时,系统会将这块资源的内存进行释放的一个过程
Realm就是使用了一个引用计数的方式去管理内存:每调用一次realm的getInstance()来获取Realm实例的时候,Realm引用数就会去加1,当我们使用实例的close方法时,引用数就会减1,所以为了保证Realm占用内存可以被及时的释放,应该在每次去使用完Realm之后及时close

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值