Creating and Saving Managed Objects
一旦你定义了managed object model并且出事化了core data栈,你就可以开始创建对象来做数据存储了。
Creating Managed Objects
一个NSManagedObject
实例实现了core data model对象的基本行为要求。NSManagedObject
需要两个元素:NSEntityDescription
实例,即实体描述实例和NSManagedObjectContext
实例即管理对象内容实例。这个entity description包括entity的名称,属性以及关系。managed object context作为你创建管理对象时的智能管道。context追踪对象间关系的改变
NSEntityDescription
有一个类方法来接收entity的名字字符串和一个相关联的NSManagedObjectContext
引用。例子中的返回类型是AAAEmployeeMO
对象。
Creating NSManagedObject Subclasses
默认的,core data会返回NSManagedObject
实例。但是子类化NSManagedObject
却是很有用的。
为了创建NSManagedObject
子类,可以在xcode的core data model编辑器中,选择entity,然后填写上类名。然后创建子类AAAEmployeeMO
。
@dynamic
标志会通知编译器这个变量会在运行时访问。
创建了子类后就会有更好的代码可读性。
Saving NSManagedObject Instances
创建了NSManagedObject
实例并不会保证它们的持久化。一旦你创建了NSManagedObject
对象,就必须显示地保存这个context来真正实现持久化。
调用NSManagedObjectContext
的save方法而且总是会返回NSError
变量来说明保存结果。