Coredata第一课 认识coredata

问题

在iOS/Mac中我们有许多方式去持久化存储数据:NSUserDefault、Key chain、C语言文件接口、NSFileHandle、基础框架中的write方法、归档等等。在实际应用中,我们经常需要将这些数据按一定格式转换为对象,并且进行一定的筛选等操作然后再使用,显得不是很方便。Apple给我们提供了Core Data框架,可以直接按对象的方式操作数据,让这些变得非常简单。

简介

CoreData中有这么几个常用的元素:

名称作用

NSManagedObjectModel对象模型,指定所用对象文件

NSPersistentStoreCoordinator持久化存储协调器,设置对象的存储方式和数据存放位置

NSManagedObjectContext对象管理上下文,负责数据的实际操作(重要)

NSEntityDescriptor实体描述符,描述一个实体,可以用来生成实体对应的对象

NSManagedObject对象

NSFetchRequest对象查询,相当于SQL的Select语句

使用步骤

在这篇文章中我们使用最简单的方式,也就是在创建项目的时候,勾选“Core Data”选项。Xcode会自动替我们在“AppDelegate”中加入创建“NSManagedObjectModel”、“NSPersistentStoreCoordinate”和“NSManagedObjectContext”等对象,方便后面的使用。

1 . 创建“NSManagedObjectModel”对象。

2 . 创建“NSPersistentStoreCoordinator”对象。

3 . 创建上下文

4 . 设置模型文件,添加实体(Entity)

点击“CoreData01.xcdatamodelId”文件,然后添加一个实体“Book”,并增加几个属性。Core Data中的实体类似于数据库的表定义,,规定了不同字段(属性)的名字和类型。

5 . 创建模型对象的类, "Editor > Create NSManagedobject Subclass"。

6 . 选择使用标量定义数值类型的属性(默认使用NSNumber类型定义int、float等类型的属性)。

7 . Xcode自动创建于实体同名的类,并且继承自“NSManagedObject”。

8 . 创建对象并存储。

9 . 以后可以通过"NSFetchRequest"从文件中获取数据。

总结

Core Data的简单使用还是很方便的,我们只需要关注数据内容和处理逻辑,而不需要考虑过多的存储操作。但是它需要使用很多貌似没有直接关联的代码,使得大家感觉非常复杂。

本文档由长沙戴维营教育整理。

与其在那里苦苦挣扎,碍于面子硬撑,倒不如微笑着面对,

Coredata第一课 认识coredata

相关文章:

你感兴趣的文章:

标签云: