core data 介绍
• Core Data 是 iOS SDK 里的一个很强大的框架,允许程序员 以面向对象 的方式储存和管理数据 。使用 Core Data 框架,程序员可以很轻松有效 地通过面向对象的接口
Core Data 框架提供了 对象 - 关系映射 (ORM) 的功能,即能够将 OC 对象转 化成数据,保存在 SQLite3 数据库文件中,也能够将保存在数据库中的 数据还原成 OC 对象
• 在数据操作过程中,无需编写任何 SQL 语句
managed object context :是基于对象来说的负责的是对数据和对象之间的交互的。
manage object model:是对象模型,对应的是xcode中的模型文件。
persistent store coordinator:是对象和实体之间的转换协调起,用于管理不同存储对象的上下文关系
persistent object store :就是持久化对象的数据库
如果还不懂那么看下面这张图
最底层的就是PersistentObjectStore,也就是我们实际存储数据的结构;
图中的模型就是ManagedObjectModel,就是数据转化为对象的模型;
以SQLite数据库为例:
- 读取数据库的数据时,数据库数据先进入数据解析器,根据对应的模板,生成对应的关联对象。
- 向数据库插入数据时,对象管理器先根据实体描述创建一个空对象,对该对象进行初始化,然后经过数据解析器,根据对应的模板,转化为数据库的数据,插入数据库中。
- 更新数据库数据时,对象管理器需要先读取数据库的数据,拿到相互关联的对象,对该对象进行修改,修改的数据通过数据解析器,转化为数据库的更新数据,对数据库更新。
这些还是要在使用中进行加深理解
推荐你们如果工作中使用到core data 的话推荐一个第三方库给你们交magical recad;
如果查找一条数据的话,我们数据库会首先进入数据解析器里面(persistent store coordinator )根据一定的数据模型来来生成对应的关联对象
再比如插入一条数据的时候,对象管理器(mangedobject context)会先根据实体描绘一个空的对象,然后经过(persistent store coordinator )根据对应的model 转化为数据库中的数据插入到数据库中
core data 介绍相关推荐
- iOS Core Data
基本概念 当前,各类应用开发中只要牵扯到数据库操作通常都会用到一个概念"对象关系映射(ORM)".例如在Java平台使用Hibernate,在.NET平台使用Entity Fram ...
- Core Data 迁移与版本管理
原文 http://chun.tips/blog/2014/11/28/core-data-ban-ben-qian-yi-jing-yan-zong-jie/ 主题 Core Data iOS开发 ...
- 使用core data
要使用core data,首先要得到 NSManagedObjectContext 之前看过斯坦福2011年冬的公开课程视频,介绍过有2种方法得到 1.为通过UIManagedDocument 2.是 ...
- 手把手教你从Core Data迁移到Realm
来源:一缕殇流化隐半边冰霜 (@halfrost ) 链接:http://www.jianshu.com/p/d79b2b1bfa72 前言 看了这篇文章的标题,也许有些人还不知道Realm是什么,那 ...
- Core Data系列二——基础概念
本文介绍的Core Data的基本概念是基于最常见的场合: Core Data配合SQLite数据库使用.Core Data也可以处理内存中的数据,这点不在讨论范围内 Core Data中基本的类 N ...
- Core Data 编程指南
一.技术概览 1. Core Data 功能初窥 对于处理诸如对象生命周期管理.对象图管理等日常任务,Core Data框架提供了广泛且自动化的解决方案.它有以下特性. (注:对象图-Object g ...
- 「最简单」的 Core Data 上手指南
本文讲的是「最简单」的 Core Data 上手指南, 原文地址:The Easiest Core Data 原文作者:Alberto De Bortoli 译文出自:掘金翻译计划 译者:Zheaol ...
- 谈谈用SQLite和FMDB而不用Core Data
谈谈用SQLite和FMDB而不用Core Data 发布于:2014-04-22 11:22阅读数:4235 凭良心讲,我不能告诉你不去使用Core Data.它不错,而且也在变好,并且它被很多其他 ...
- Core Data 使用
简单的介绍一下 ios 数据持久化 Core Data 使用 话不多说,直接上图 接下来,在工程中 command+N 新建Core Data 文件 创建成功后,接下编辑Core Data 文件 接 ...
最新文章
- 将python3.1+pyqt4打包成exe
- 找不到具有指定ID的对话框类解决方法
- (二)Amazon Lightsail 部署LAMP应用程序之部署单片LAMP应用程序
- 一步一步CCNA之六:交换机vtp配置
- 用户被忽悠 微软黑屏计划推至21日0点实施
- 7款Flash和Javascript网页视频播放器
- 对android.mk debug
- Envious Exponents
- java计算机毕业设计宠物店管理系统源码+数据库+系统+lw文档+部署
- 配置Windows静态IP地址
- Kosaraju算法+Trajan算法
- IOS开发-苹果开发者中心 提示 edit phone number
- SMILES:化学结构的线性表示方法
- mysql 启动失败 详情_mysql启动失败一例
- ps如何切html用的图片,前端实战(一)-----用ps把PSD切成HTML能用的图片
- Debian修改时区
- 2016年8月18日 星期四 --出埃及记 Exodus 16:19
- VS2019 C++的跨平台开发——Android .so开发
- [读书笔记]读<<观止>>有感
- datagridvie设置行高列宽_DataGridView 列宽和行高自动调整的设定