CoreData介绍
CoreData是一门功能强大的数据持久化技术,位于SQLite数据库之上,它避免了SQL的复杂性,能让我们以更自然的方式与数据库进行交互。CoreData提供数据--OC对象映射关系来实现数据与对象管理,这样无需任何SQL语句就能操作他们。CoreData数据持久化框架是Cocoa API的一部分,它允许按照实体-属性-值模型组织数据,并以XML、⼆进制文件或者SQLite数据⽂件的格式持久化数据,可以简单的理解为Cocoa对SQLite的一层封装。
简单使用
创建工程的时候直接勾选coredata

通过这样创建的,进入AppDelegate.m文件,会发现生成如下代码 注: NSPersistentContainer支持的ios最低版本为10.0,10以下用NSPersistentStoreCoordinator

或在工程中创建

对应生成.xcdatamodeld文件,选中,然后如图所示,添加实体和实体对应的属性

创建生成存储对象的类,Xcode 自动生成,如图所示,会生成左边的四个文件

用到的类
.xcdatamodeld 文件:定义了数据库数据和 OC 对象转换的映射关系,编译后为 .momod 文件
NSManagedObjectModel:数据模型(说白了就是这个表),负责读取解析 .momod 文件
NSPersistentContainer:数据库连接类,通过解析结果去实现数据库和 OC 对象之间的相互转换,10.0之前用NSPersistentStoreCoordinator
NSManagedObjectContext:数据模型管理类,等同于一个容器,用来存储从数据库中转换出来的所有的 OC 对象。我们的增删改查操作直接对这个类使用来获得或者修改需要的 OC 对象
主要用NSManagedObjectContext进行操作
CoreData存取数据
存储

读取

NSPersistentContainer 异步线程保存,存储速度要快很多,可使用

本文介绍了CoreData,它是一门强大的数据持久化技术,位于SQLite数据库之上,避免了SQL的复杂性。还说明了其简单使用方法,如创建工程时勾选或在工程中创建,介绍了用到的类。最后阐述了CoreData存取数据的操作,NSPersistentContainer异步线程保存速度快。
349

被折叠的 条评论
为什么被折叠?



