• iOS CoreData


    CoreData是iOS5后,苹果提供的原生的用于对象化管理数据并且持久化的框架(ORM)

    CoreData本质上是将底层数据库封装成对象进行管理。但数据库实际上只是CoreData的一个功能,并不是全部功能。

    在iOS开发中,除了可以使用CoreData进行数据管理,还可以使用SQLite进行内存管理

    并且有封装好SQLite代码的OC框架FMDB给我们使用。具体看我上篇文章。SQLite重要框架FMDB的使用.但对比SQLite,CoreData有下面几个优势

    第一是CoreData作为苹果提供的原生框架,在内存方法比SQLite有性能上的优势

    第二是CoreData操作数据不需要使用SQLite代码,使用方便

    第三是CoreData把数据用面向对象方式进行管理,操作数据库更方便。
    CoreData的核心是Core Data stack(技术栈堆)。CoreData就是依靠Core Data stack中的几个对象进行数据操作的

    这几对象是:
    NSManagedObjectContext ,管理对象的上下文: 负责管理模型对象的一个集合,
    NSManagedObjectModel 被管理的对象模型
    NSPersistentStoreCoordinator 存储调度器: 负责将数据保存到磁盘
    NSPersistentStore用于保存模型数据,受NSPersistentStoreCoordinator 存储调度器的操控
    这三个对象的关系如下面图片所示,苹果官方给出了这几个对向关系的图解。简单理解起来就是最上面的NSManagedObjectContext负责管理对象模型。然后将管理的对象模型发送给NSPersistentStoreCoordinator 存储调度器,存储调度器通过NSPersistentStore操作SQLite语句,将数据持久化到本地,保存到StoryFile中。

  • 相关阅读:
    javac 命令行使用总结
    电脑右键菜单的编辑(注册表操作)
    C++ —— 类模板的分离式编译
    命令行学习备份
    浏览器老是自动跳出广告垃圾网页
    SQL 事务
    Python中MySQL插入数据
    Python给数字前固定位数加零
    selenium+python3 鼠标事件
    mysql与mongodb命令对比
  • 原文地址:https://www.cnblogs.com/1018475062qq/p/7069133.html
Copyright © 2020-2023  润新知