首页 > 其他分享 >iOS数据持久化 - CoreData

iOS数据持久化 - CoreData

时间:2022-10-31 03:00:09浏览次数:29  
标签:文件 持久 实体 iOS CoreData 版本 属性

前言

1 - CoreData 是苹果公司封装的进行数据持久化的框架,首次在 iOS 3.0 版本系统中出现,它允许按照实体-属性-值模型组织数据,并以 XML、二进制文件或者 SQLite 数据文件的格式持久化数据

2 - CoreData 可以节省代码量:一般可达 30% 到 70%;它支持可视化建模;支持模型版本升级

3 - CoreData 的核心类

① NSManagedObjectConext:被管理对象上下文(数据管理器),相当于一个临时数据库。它负责应用与数据库之间的交互,增删改查基本操作都要用到(在实际开发中我们只关注该层)

② NSManagedObjectModel:被管理对象模型(数据模型器),它可以添加实体及实体的属性,为 xxx.xcdatamodeld 文件

③ NSPersistentStoreCoordinator:持久化存储助理(数据链接器),是整个 CoreData 的核心,用来配置数据存储的名字、位置、存储方式等

④ NSManagedObject:是从 CoreData 中取出来的对象,默认都是 NSManagedObject 对象,通过键值对来存取所有的实体属性,相当于数据库中的表格记录

⑤ NSFetchRequest:获取数据时的请求

 

模型版本升级

1 - 流程图

① 选中 xxx.xcdatamodeld 文件,选择 Editor ->Add Model Version

 

② 选择当前版本:点击新建的模型版本 CoreDataDemo 2,在工程属性面板中更新当前版本

 

 

③ 给 CoreDataDemo 2 中的实体 student 新增分数属性

 

④ 新建映射文件

 

 

 

 

⑤ 配置代码:修改 APPDelegate 文件中的 - (NSPersistentStoreCoordinator *)persistentStoreCoordinator 方法

⑥ 删除旧文件  Student.h 和 Student.m,选择 Editor ->Create NSManagedObject Subclass,选择对应版本、实体即可完成

 

 

 

 

标签:文件,持久,实体,iOS,CoreData,版本,属性
From: https://www.cnblogs.com/self-epoch/p/16842930.html

相关文章

  • Axios的相关应用
    Axios的案例应用要求利用axios实现之前利用AJAX实现的验证用户是否登录的案例鉴于这两种语法的相似性,只需要在AJAX里面的注册界面里面的script标签里面包含的代码修改为......
  • Vue 尚硅谷 axios
     安装npmiaxios跨域:1.cors2.jsonpscriptsrc解决get请求。post,delete,put无法请求3.代理vue-clivue.config.js vue-cli代理缺点:1.不能配置多个代理2.......
  • bios模拟器
    bios模拟器模拟器1基于英特尔®至强®处理器E5-2600v3产品家族的服务器BIOS模拟器此英特尔®BIOS模拟器模拟用户在按duringPOST时通常会看到的BIOS接口。......
  • 【Redis高手修炼之路】③持久化
    持久化​​1.RDB​​​​1.1自动备份​​​​1.2手动备份​​​​1.3与RDB相关的配置​​​​2.AOF​​​​2.1开启AOF​​​​2.2共存?谁优先?​​​​2.3与AOF相关......
  • bios、uefi、grub在启动过程中的作用
    作者并非从事嵌入式底层工作,完全凭兴趣得出此文,并没有详细做实验验证,仅根据阅读资料总结得出。 bios使用MBR分区表1、Bios + windows:Bios 读取 MBR 前446字节的引......
  • 在Airtest自动化中如何清除iOS后台应用
    前言不知道做iOS测试的同学有没有遇到过1个非常让人苦恼的问题:每次打开iOS应用的界面都是上次退出时的界面,应用初始页面不一致,导致脚本运行出现了各种问题。但 iOS平台并......
  • M区ios创建方法
    今天整理了一期美区id注册教程,用处我就不多介绍了,需要的人自然是知道的.接下来让我们一步一步进行,第一步:准备一个邮箱国内的126、qq、163等等都可以,只要没用它注册过......
  • 【AGC】iOS的applink的回调没反应问题分析
    ​问题背景在iOS平台集成AGCAppLinking是遇到了问题和疑惑。提问如下:使用universallink或者urlschema的applink都能拉起app,但是判断是否applink返回false,applink......
  • 解决AxiosError: options must be an object ERR_BAD_OPTION_VALUE
    VUE中HTTP请求,AxiosError:optionsmustbeanobjectERR_BAD_OPTION_VALUE错误解决。 此错误完整为:{message:'optionsmustbeanobject',name:'AxiosError',......
  • Fiddler抓包iOS手机配置全流程
    前情平时做移动移动端开必的时候经常需要抓包手机,用于接口请求跟踪,但iOS的抓包经常性的配不成功,经过踩过不少坑后终于知道了整个配置流程,此文记录Fiddler抓包iOS手机的配......