美文网首页
数据持久化学习笔记

数据持久化学习笔记

作者: 沐风者说 | 来源:发表于2016-11-10 10:33 被阅读7次

在iOS开发中,常用的数据持久化方法共有四种:”属性列表“,”数据归档“,”SQLite“、”CoreData“

一、属性列表

特点:不加密,所以安全性为零。常用于存储非私密的数据。比如城市列表这一类数据,读取到字典或数组非常方便。

属性列表只能存储NSString, NSNumber, NSDate, NSArray, NSDictionary这些格式的数据。不能存储自定义的数据。

二、数据归档/序列化

特点:可以进行加密处理。归档处理后转化为二进制数据。并且可以通过归档的方式将自定义对象写入文件中。

我们使用NSKeyedArchiver来对自定义的数据进行序列化,但其前提是必须遵守NSCoding协议并实现其两个协议方法。如果需要,你也可以遵守NSSecureCoding协议来增加数据的安全性。

三、SQLite

sqlite是一个轻量级、跨平台的小型数据库,其拥有可移植性高、有着和MySql几乎相同的数据库语句以及无需服务器即可使用的优点:

一、可以存储大量的数据,存储和检索的速度非常快;二、能对数据进行大量的聚合,这样比起使用对象来进行这些操作要快。

当然,它也具有明显的缺点:

一、它没有提供数据库的创建方式;

二、它基于C语言框架设计,没有面向对象的API,所以使用起来比较麻烦;

三、复杂的数据模型的数据建表相对而言比较麻烦。

当然,我们也可以使用基于sqlite封装的开源数据库FMDB来减少使用sqlite的工作量。

四、CoreData

特点:访问速度快,coredata将数据存储在不同的数据库中,并在使用时将本地数据放到内存中,加快访问速度。但是coredata是完全面向对象的,所以他的执行效率也比不上原生数据库。

相关文章

  • Docker学习(13) 卷与持久化数据

    Docker学习(13) 卷与持久化数据 卷与持久化数据——简介 数据主要分为两种:持久化和非持久化。 持久化:就...

  • [Android] Realm 的初探

    关于Realm 在学习 Android 的时候 , 我们知道数据持久化的问题,对于数据持久化通常有以下几种方式: ...

  • iOS本地数据持久化

    iOS本地数据持久化 iOS本地数据持久化

  • Redis-2 数据持久化及持久化配置

    一、数据持久化 开启持久化功能后,重启redis,数据会自动通过持久化文件恢复!! 1、redis持久化 – 两种...

  • SQLite数据库

    在学习SQLite之前,首先了解下数据持久化的几种方式: 定义:数据持久化是通过文件将数据存储在磁盘上 IOS下主...

  • 面试相关

    数据持久化 什么是持久化狭义的理解: “持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据...

  • GeekBand iOS开发高级进阶学习笔记(第四周)

    简易数据存储 数据持久化分为本体持久化和云端持久化本体持久化可以存在本地文件或数据库。云端可以存在iCloud,存...

  • iOS数据持久化

    Title: iOS数据持久化 ##数据持久化概念 数据持久化就是将内存中的数据模型转换为存储模型,以及将存储模型...

  • redis与memcache区别

    1、持久化 redis是支持持久化存储,宕机重启数据不会丢失,memcache重启后数据丢失 redis持久化的方...

  • iOS本地数据持久化

    转载自:CocoaChina - iOS本地数据持久化 本文内容:iOS本地数据持久化的几种类型iOS本地数据持久...

网友评论

      本文标题:数据持久化学习笔记

      本文链接:https://www.haomeiwen.com/subject/oadwyttx.html