完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
Core Data是一种ORM(对象关系映射)技术。ORM是关系模型数据和对象模型类之间的一个纽带。
关系模型和对象模型是有区别的,对象模型更加先进,能描述继承、实现、关联、聚合和组成等复杂的关 系,而关系模型只能描述一对一、一对多和多对多的关系。这两种模型之间的不和协称为阻抗不匹配问题, 而ORM可以解决阻抗不匹配问题。 Core Data是苹果为Mac OS X和iOS系统应用开发提供的数据持久化技术。它基于高级数据持久化API,它的最层最终是SQLite数据库、二进制文件和内存数据保存,这样开发人员不用再关心数据的存储细问题,不用再使 用SQL语句,不用面对SQLite的C语言的函数. (1)NSManagedObjectContext(被管理的数据上下文 MOC) 操作实际内容(操作持久层) 作用:插⼊数据,查询数据,删除数据 (2)NSManagedObjectModel(被管理的数据模型 MOM) 数据库所有表格或数据结构,包含各实体的定义信息 作用:添加实体的属性,建立属性之间的关系 操作方法:视图编辑器,或代码 .这个模型包含实体(Entity),特性(Property),读取请求(Fetch Request)等 (3)NSPersistentStoreCoordinator(持久化存储助理) 相当于数据库的连接器 作用:设置数据存储的名字,位置,存储⽅方式,和存储时机 处理底层的对数据文件的读取与写入。一般我们无需与它打交道。 (4)NSManagedObject(被管理的数据记录) 相当于数据库中的表格记录,与 Managed Object Context 相关联 (5)NSFetchRequest(获取数据的请求)相当于查询语句 (6)NSEntityDescription(实体结构) 相当于表格结构 (7)后缀为.xcdatamodeld的包⾥⾯是.xcdatamodel文件,⽤用数据模型编辑器编辑 编译后为.momd或.mom文件 NSSQLiteStoreType。指数据持久化类型是SQLite数据。 NSBinaryStoreType。指数据持久化类型是二进制文件。 NSInMemoryStoreType。指数据持久化类型是内存形式 二, Model class 模型有点像数据库的表结构,里面包含 Entry, 实体又包含三种 Property:Attribute(属性),RelationShip(关系), Fetched Property(读取属性)。Model class 的名字多以 "Description" 结尾。我们可以看出:模型就是描述数据类型以及其关系的。 主要的 Model class 有: Model Classes Managed Object ModelNSManagedObjectModel数据模型EntityNSEntityDescription抽象数据类型,相当于数据库中的表PropertyNSPropertyDescriptionEntity 特性,相当于数据库表中的一列 > AttributeNSAttributeDescription基本数值型属性(如Int16, BOOL, Date等类型的属性) > RelationshipNSRelationshipDescription属性之间的关系 > Fetched PropertyNSFetchedPropertyDescription查询属性(相当于数据库中的查询语句) 1)Entity - NSEntityDescription Entity 相当于数据库中的一个表,它描述一种抽象数据类型,其对应的类为 NSManagedObject 或其子类。 NSEntityDescription 常用方法: +insertNewObjectForEntityForName:inManagedObjectContext: 工厂方法,根据给定的 Entity 描述,生成相应的 NSManagedObject 对象,并插入 ManagedObjectContext 中。 -managedObjectClassName 返回映射到 Entity 的 NSManagedObject 类名 -attributesByName 以名字为 key, 返回 Entity 中对应的 Attributes -relationshipsByName 以名字为 key, 返回 Entity 中对应的 Relationships 2)Property - NSPropertyDescription Property 为 Entity 的特性,它相当于数据库表中的一列,或者 XML 文件中的 value-key 对中的 key。它可以描述实体数据(Attribute),Entity之间的关系(RelationShip),或查询属性(Fetched Property)。 > Attribute - NSAttributeDescription Attribute 存储基本数据,如 NSString, NSNumber or NSDate 等。它可以有默认值,也可以使用正则表达式或其他条件对其值进行限定。一个属性可以是 optional 的。 > Relationship - NSRelationshipDescription Relationship 描述 Entity,Property 之间的关系,可以是一对一,也可以是一对多的关系。 > Fetched Property - NSFetchedPropertyDescription Fetched Property 根据查询谓词返回指定 Entity 的符合条件的数据对象。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
1658 浏览 2 评论
13466 浏览 0 评论
4601 浏览 7 评论
2827 浏览 9 评论
2772 浏览 2 评论
stm32的TX或RX引脚出现了对地短路是怎么回事?如何解决?
744浏览 4评论
923浏览 2评论
1515浏览 2评论
1660浏览 2评论
用LM5116做的电流源,LM5116输出占空比受限怎么解决?
692浏览 2评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 23:49 , Processed in 1.251403 second(s), Total 68, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖