关于Core Data的一些整理(四)

  • 调用Core Data文件中的Request模板进行条件匹配

 //获取ObjectModel相当于获取Core Date文件
NSManagedObjectModel *model = self.coreDataStack.contenxt.persistentStoreCoordinator.managedObjectModel;
self.fetchRequest = [model fetchRequestTemplateForName:@"FetchRequest"];
self.venues = [self.coreDataStack.contenxt executeFetchRequest:self.fetchRequest error:nil];
  • iOS8新增Asynchronous异步调用Core Data,提高性能
 @property (nonatomic, strong) NSFetchRequest *fetchRequest;
@property (nonatomic, strong) NSAsynchronousFetchRequest *asyncFetchRequest; //asyncFetch只是对普通request的封装
self.fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Venue"];
self.asyncFetchRequest = [[NSAsynchronousFetchRequest alloc] initWithFetchRequest:self.fetchRequest completionBlock:^(NSAsynchronousFetchResult * _Nonnull result) {
self.venues = result.finalResult;
[self.tableView reloadData];
}];
//注意调用的是executeRequest:方法
[self.coreDataStack.contenxt executeRequest:self.asyncFetchRequest error:nil];
  • iOS8新增批(Batch)处理,链接

Batch Updates或Batch Deletes与普通NSFetchRequest请求不同的是,他们都基于NSPersistentStoreRequest类,这是直接对底层的NSPersistentStore进行数据操作的请求,而不经过NSManagedObjectContext,因此避免将固态存储的数据转移到内存再处理的过程,因此效率大大提升。

 //设置批处理请求,包含更新的内容,影响的stores
NSBatchUpdateRequest *batchUpdate = [NSBatchUpdateRequest batchUpdateRequestWithEntityName:@"Venue"];
batchUpdate.propertiesToUpdate = @{@"favorite":@YES};
batchUpdate.affectedStores = self.coreDataStack.contenxt.persistentStoreCoordinator.persistentStores;
batchUpdate.resultType = NSUpdatedObjectsCountResultType;//返回更新的行数 NSBatchUpdateResult *batchResult = [self.coreDataStack.contenxt executeRequest:batchUpdate error:nil];
NSLog(@"%@", batchResult.result);
//在iOS9中又新增

关于Core Data的一些整理(四)的更多相关文章

  1. 关于Core Data的一些整理(三)

    关于Core Data的一些整理(三) 关于Core Data Stack的四种类与它们的关系如下: NSManagedObjectModel NSPersistentStore NSPersiste ...

  2. 关于Core Data的一些整理(二)

    关于Core Data的一些整理(二) 创建NSManagedObject的子类时,有一点是在这中间要强调的一点是,要不要勾选 Use scalar properties for primitive ...

  3. 关于Core Data的一些整理(五)

    关于Core Data的一些整理(五) 在Core Data中使用NSFetchedResultsController(以下简称VC)实现与TableView的交互,在实际中,使用VC有很多优点,其中 ...

  4. 关于Core Data的一些整理(一)

    关于Core Data的一些整理(一) 在Xcode7.2中只有Mast-Debug和Single View中可以勾选Use Core Data 如果勾选了Use Core Data,Xcode会自动 ...

  5. Core Data 学习简单整理01

    Core Data是苹果针对Mac和iOS平台开发的一个框架, 通过CoreData可以在本地生成数据库sqlite,提供了ORM的功能,将对象和数据模型相互转换 . 通过Core Data管理和操作 ...

  6. 四种数据持久化方式(下) :SQLite3 和 Core Data

    在上文,我们介绍了iOS开发中的其中2种数据持久化方式:属性列表.归档解档. 本节将继续介绍另外2种iOS持久化数据的方法:数据库 SQLite3.Core Data 的运用: 在本节,将通过对4个文 ...

  7. 《驾驭Core Data》 第二章 Core Data入门

    本文由海水的味道编译整理,请勿转载,请勿用于商业用途.    当前版本号:0.4.0 第二章 Core Data入门 本章将讲解Core Data框架中涉及的基本概念,以及一个简单的Core Data ...

  8. 《驾驭Core Data》 第三章 数据建模

    本文由海水的味道编译整理,请勿转载,请勿用于商业用途.    当前版本号:0.1.2 第三章数据建模 Core Data栈配置好之后,接下来的工作就是设计对象图,在Core Data框架中,对象图被表 ...

  9. 《驾驭Core Data》 第一章 Core Data概述

    <驾驭Core Data>系列教程综合了<Core Data for iOS>,<Learning Core Data for iOS>,<Core Data ...

随机推荐

  1. [转]Windows Azure上安装SharePoint 2013

    基于Windows Azure 安装SharePoint 2013 前段时间写的基于Windows Azure安装SharePoint系列,由于Azure的体验账号过期了,所以不得不暂停.今天有幸参加 ...

  2. 3.Repeater 绑定数据例子

    此例子绑定的数据源为微软在mssql2000中提供的Northwind数据库中的表Categories. 以下为设计步骤: 在C# 中连接数据库.如下图: 在项目中添加新建项,建立一个数据集,并把Ca ...

  3. Java native(转)

    Java不是完美的,Java的不足除了体现在运行速度上要比传统的C++慢许多之外,Java无法直接访问到操作系统底层(如系统硬件等),为此Java使用native方法来扩展Java程序的功能. 可以将 ...

  4. yum命令常见方法

    yum check-update 检查可更新的所有软件包 yum update 下载更新系统已安装的所有软件包 yum upgrade 大规模的版本升级,与yum update不同的是,连旧的淘汰的包 ...

  5. hiho #1079 : 离散化

    描述 小Hi和小Ho在回国之后,重新过起了朝7晚5的学生生活,当然了,他们还是在一直学习着各种算法~ 这天小Hi和小Ho所在的学校举办社团文化节,各大社团都在宣传栏上贴起了海报,但是贴来贴去,有些海报 ...

  6. 网络流(二分):BZOJ 3993: [SDOI2015]星际战争

    Description 3333年,在银河系的某星球上,X军团和Y军团正在激烈 地作战.在战斗的某一阶段,Y军团一共派遣了N个巨型机器人进攻X军团的阵地,其中第i个巨型机器人的装甲值为Ai.当一个巨型 ...

  7. 【模拟】Codeforces 711A Bus to Udayland

    题目链接: http://codeforces.com/problemset/problem/711/A 题目大意: N个字符串,每个字符串5位,找到第一个出现两个OO的并改成++输出YES和改后字符 ...

  8. Construct Binary Tree from Inorder and Postorder Traversal——LeetCode

    Given inorder and postorder traversal of a tree, construct the binary tree. 题目大意:给定一个二叉树的中序和后续序列,构建出 ...

  9. 类似与fiddler的抓包工具 burp suite free edition

    burp suite free edition

  10. floyd详解

    就不在来回搬了 请看 http://note.youdao.com/groupshare/?token=6422E952998F4381A1534B71359EFA57&gid=1579165 ...