使用core data
要使用core data,首先要得到
NSManagedObjectContext
之前看过斯坦福2011年冬的公开课程视频,介绍过有2种方法得到
1.为通过UIManagedDocument
2.是在AppDelegate中定义@property
第一种方法较为容易,不过只支持IOS5或以上版本
先在要使用core data的UIViewController中定义UIManagedDocument的@property
然后通过以下代码片段建立
NSURL *url = [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];url = [url URLByAppendingPathComponent:@"Albeum"];self.document=[[UIManagedDocument alloc] initWithFileURL:url];if([[NSFileManager defaultManager] fileExistsAtPath:[url path]]){[document openWithCompletionHandler:^(BOOL success) {if(success)[self documentIsReady];}];}else{[document saveToURL:url forSaveOperation:UIDocumentSaveForCreating completionHandler:^(BOOL success) {if (success) {[self documentIsReady];}}];}
然后就可以在documentIsReady中写要做的事情
以下是简单的插入,然后使用NSFetchRequest查询后输出
-(void)documentIsReady{NSManagedObjectContext *context = document.managedObjectContext;AlbeumGroup *person=(AlbeumGroup *)[NSEntityDescription insertNewObjectForEntityForName:@"AlbeumGroup" inManagedObjectContext:context]; person.name=@"张三";NSError *error;if (![context save:&error]) { NSLog(@"error!"); }else { NSLog(@"save person ok."); }NSFetchRequest *request=[[NSFetchRequest alloc] init]; NSEntityDescription *entity=[NSEntityDescription entityForName:@"AlbeumGroup" inManagedObjectContext:context]; [request setEntity:entity];NSArray *results=[[context executeFetchRequest:request error:&error] copy];for (AlbeumGroup *p in results) { //NSLog(@">> p.id: %i p.name: %@",p.id,p.name); NSLog(@">>p.name: %@",p.name); } }
转载于:https://www.cnblogs.com/gachal/archive/2012/04/10/2440837.html
使用core data相关推荐
- iOS Core Data
基本概念 当前,各类应用开发中只要牵扯到数据库操作通常都会用到一个概念"对象关系映射(ORM)".例如在Java平台使用Hibernate,在.NET平台使用Entity Fram ...
- core data 学习笔记
为什么80%的码农都做不了架构师?>>> 学习路线: Core Data Tutorial for iOS Core Data Utility Tutorial Core Da ...
- 《Core Data应用开发实践指南》一1.3 创建Grocery Dude项目
本节书摘来自华章出版社<Core Data应用开发实践指南>一书中的第1章,第1.3节,作者 (美)Tim Roadley,更多章节内容可以访问云栖社区"华章计算机"公 ...
- iOS 数据持久化 -- Core Data (2)
2019独角兽企业重金招聘Python工程师标准>>> 1.Core Data 是数据持久化存储的最佳方式 2.数据最终的存储类型可以是:SQLite数据库,XML,二进制,内存里, ...
- 【转】多线程Core Data
原文地址:http://www.cocoanetics.com/2012/07/multi-context-coredata/ Multi-Context CoreData When you star ...
- 一个完整的Core Data应用
在这篇文章中,我们将建立一个小型但却全面支持Core Data的应用.应用允许你创建嵌套的列表:每个列表的item都可以有子列表,这将允许你创建非常深层次的item.为了让大家完整的了解发生了什么,我 ...
- [Cocoa]深入浅出Cocoa之Core Data(4)- 使用绑定
深入浅出 Cocoa 之 Core Data(4)- 使用绑定 罗朝辉 (http://www.cnblogs.com/kesalin/) 本文遵循"署名-非商业用途-保持一致"创 ...
- 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的一些整理(一) 在Xcode7.2中只有Mast-Debug和Single View中可以勾选Use Core Data 如果勾选了Use Core Data,Xcode会自动 ...
最新文章
- 为计算机编程序英语作文,计算机编程员英文简历范文
- AWARD BIOS设置详解
- [翻译]NUnit---Action Attributes(八)
- 3种团队分组适应项目_暴利生意:3种适合农村夫妻创业致富的项目,年赚10多万...
- linux如何使用vim显示行号语法高亮,(.vimrc简单使用)
- Spark shuffle:hash和sort性能对比
- 哈萨比斯首次解读AlphaZero竟被当场diss,他起身当面回击说…
- 游戏玩家的留存率统计实现
- cscd论坛_高压电器第九届电工技术前沿问题学术论坛“先进电磁技术”分论坛及专题征稿...
- 记录 UiPath 学习中遇到的一些问题以及解决办法
- 百度离线地图——瓦片地图下载
- 面向对象技术(C++)学生成绩管理系统课程设计任务书及说明书
- 课堂作业:首尾相连求最大子数组
- Unity 自由视角的惯性旋转
- 输入日期得出星座c语言,C++输入日期 判断所属星座
- 实现echarts图多个legend图例和自定义legend中字体颜色
- 俄罗斯计划推出数字卢布 逐年解锁推进?国际货币金融体系迈入数字化变革
- UE5 Metahuman使用Live Link Face动画不匹配的问题修复
- es管理器免root_国产应用也强大 ES文件浏览器增加ROOT管理
- 如何给自制的微信小程序设置一个密码