本篇对IOS中常用的5种数据持久化方法进行简单对比总结
第1种:UserDefaults(iPhone开发【二十】数据持久化总结之第1篇—NSUserDefaults)
1)易用性很强
2)数据存储在.plist文件中
3)一般保存首选项信息、缓存数据等,适用存储较少量数据的情况
4)缺点:无法将自定义对象序列化到属性列表中
第2种:属性列表(iPhone开发【二十一】数据持久化总结之第2篇—属性文件(.plist))
1)易用性较强
2)数据存储在.plist文件中
3)一般用于存储少量数据,也不适合操作处理大量数据
4)缺点:无法将自定义对象序列化到属性列表中
这种方法与第1种非常相像,首选项信息、缓存数据等一般用第1种,其它情况一般用第二种方法。
第3种:归档(iPhone开发【二十二】数据持久化总结之第3篇—归档(NSKeyedArchiver、NSKeyedUnarchiver))
1)易用性较强
2)数据存储archive文件中
3)一般用于存储少量数据
4)最大的优点是:可以将复杂的对象写入文件 可以归档集合类,所以无论添加多少对象,将对象写入磁盘的方式都是一样的,不会增加工作量;
而如果用第2种方法的属性列表一则无法保存复杂对象,二则工作量会随着对象的增加而加大
第4种:sqlite3(iPhone开发【二十四】数据持久化总结之第4篇—sqlite3数据库)
1)IOS 相关api都是C语言接口,且设计的易用性不强
2)数据存储在.db3数据库中
3)可以存储大量数据,存储、检索大量数据非常高效;
能对数据进行复杂的聚合,比使用对象执行这些操作要高效得多。
PS:封装sqlite3操作的两个常用框架BNRPersistence fmdb
第5种:CoreData(iPhone开发【二十六】数据持久化总结之第5篇—CoreData技术)
类似java中的Hibernate
1)个人感觉易用性不强
2)数据存储可以选择sqlite,xml,plist或是其他方式作为持久化方案,一般使用sqlite
3)优点:实现的功能包括redo,undo,数据验证等
分享到:
相关推荐
实例中包含三种保持数据的方法,第一种:实用属性列表,第二种:对象归档,第三种:使用Iphone的嵌入式数据库(SQLite3),让你对数据持久化有一个更全面的认识。
第7章介绍用多种方法将数据导入或下载到程序中,并使用iPhone 的多点 触摸界面显示这些数据。 第8章:控件 UIControl 类为许多iPhone 交互式元素提供了基础,包括按钮、文本字段、滑块和开关。第8章通过 已经或尚未...
第7章介绍用多种方法将数据导入或下载到程序中,并使用iPhone 的多点 触摸界面显示这些数据。 第8章:控件 UIControl 类为许多iPhone 交互式元素提供了基础,包括按钮、文本字段、滑块和开关。第8章通过 已经或尚未...
第7章介绍用多种方法将数据导入或下载到程序中,并使用iPhone 的多点 触摸界面显示这些数据。 第8章:控件 UIControl 类为许多iPhone 交互式元素提供了基础,包括按钮、文本字段、滑块和开关。第8章通过 已经或尚未...
iOS中有五种持久化数据的方式:属性列表、对象归档、NSUserDefault、SQLite3和Core Data 本文章讲述通过属性列表的方式持久化数据,这个方法也是我们平时最经常用到的方式。比如应用程序的配置和个性化的设置,一般...
该工程是在iphone中通过属性列表实现数据持久化存储的程序。
一个使用SQLite3来进行数据持久操作的例子,本来是应该和前面的资源一起传上来的,不小心漏掉了,于是单独传吧。感觉这个用赶来比core data方便很多啊,sql语句的使用也很方便。
iPhone开发书籍大全].Beginning.iPhone.SDK.Programming.with.Objective-C
[iphone.开发书籍 高清PDF]iphone3开发基础教程.part3
iPhone开发实战 iPhone开发 iPhone iPhone4 iPhone开发实战 iPhone开发 iPhone iPhone4
iPhone开发秘籍.part5 iPhone开发秘籍.part5
本程序实现iphoe通过对象归档实现数据持久化,具体可以参考我的本站博文。
《Iphone开发基础教程》第十一章 基本数据持久性