coredata一直很少用,一直用的sqlite,今天就总结一下好用的CoreData,毕竟是苹果的开发者,咱就使用原生的吧.模仿别人的写一遍,熟悉一下操作
1。按照 UserDefault模式操作
NSManagedObjectContext *context = [selfmanagedObjectContext];
//根据实体名称,创建一个实体实例
NSManagedObject *failedBankInfo = [NSEntityDescriptioninsertNewObjectForEntityForName:@"FailedBankInfo"inManagedObjectContext:context];
//赋值
[failedBankInfo setValue:@"Test Bank1"forKey:@"name"];
[failedBankInfo setValue:@"Testvile"forKey:@"City"];
[failedBankInfo setValue:@"Testland"forKey:@"state"];
NSManagedObject *failedBankDetails = [NSEntityDescriptioninsertNewObjectForEntityForName:@"FailedBankDetails"inManagedObjectContext:context];
[failedBankDetails setValue:[NSDatedate] forKey:@"closeDate"];
[failedBankDetails setValue:[NSDatedate] forKey:@"updateDate"];
[failedBankDetails setValue:[NSNumbernumberWithInt:12345] forKey:@"zip"];
[failedBankDetails setValue:failedBankInfo forKey:@"info"];
[failedBankInfo setValue:failedBankDetails forKey:@"details" ];
NSError *error;
//保存数据
if (![context save:&error]) {
NSLog(@"%@",error.localizedDescription);
}
2.按照类的实例方式赋值
AppDelegate * delegate = [NSApplicationsharedApplication].delegate;
// 获取上下文
NSManagedObjectContext * context = [delegate managedObjectContext];
NSFetchRequest * fetchRequest = [[NSFetchRequestalloc] init];
// 根据名称获取实体
NSEntityDescription * entity = [NSEntityDescriptionentityForName:@"FailedBankInfo"inManagedObjectContext:context];
// fetch设置实体
[fetchRequest setEntity:entity];
// fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"FailedBankInfo"];//可根据entity名称获取fetch
NSError * error;
// 在context中根据 fetch获取实体集
NSArray *fetchObjects = [context executeFetchRequest:fetchRequest error:&error];
// 遍历实体集
for (NSManagedObject *info in fetchObjects) {
NSLog(@"%@",[info valueForKey:@"name"]);
NSManagedObject * details = [info valueForKey:@"details"];
NSLog(@"Zip %@",[details valueForKey:@"zip"]);
}
从1.2两种方式看出,iOS的CoreData对数据的操作还是很方便的,省去了很大一部分sql语句,对于手机端开发人员省去了很多时间去学习SQL的东西,而去更加关注应用的细节开发
相关推荐
通过这个"coredata demo",开发者可以学习到如何在实际项目中使用CoreData,理解其工作原理,以及如何结合UITableView展示数据。这对于构建任何需要存储和检索数据的iOS应用来说都是非常重要的。
在标题提到的“Coredata的简单使用”中,我们将探讨如何结合MJExtension这一轻量级的JSON模型转换库来进一步简化数据处理。 首先,了解CoreData的基本架构。CoreData包括模型(Model)、托管对象上下文(Managed...
本教程以"CoreData使用 网易新闻"为例,讲解如何利用CoreData进行增删改查操作,并已封装好相关功能,便于直接应用。 1. **CoreData架构** CoreData框架包括三个主要组件:Model(模型)、View(视图)和...
通常,CoreData的读操作可以在任何线程中进行,但写操作(包括数据验证和保存)应该在主线程中执行,以保证UI的同步和数据的一致性。 总之,CoreData的数据验证机制是确保应用数据质量和一致性的重要手段。通过合理...
本篇文章将深入探讨CoreData的创建与使用,帮助开发者理解并熟练掌握这一核心技术。 一、CoreData概述 CoreData并不是一个数据库系统,而是一个模型对象框架,它负责管理和存储应用程序的数据。它通过创建数据模型...
在“coredata实例”这个项目中,我们可以看到一个关于如何使用CoreData实际操作的例子,特别是如何存储图像数据。在iOS应用中,存储图像通常是一个挑战,因为图像文件可能很大,而CoreData并不直接支持二进制大对象...
由于是一个Demo所以也没怎么进行封装,就迁就着看,再以后的几篇关于CoreData的blog里,我会深入学习,并且最终会用block对他进行封装,争取用起来写更少的代码量。 CoreData让不懂sql语句的人获益不少,因为他的...
"简单写了增删"表明这个示例可能涵盖了如何添加新数据到CoreData以及删除已有数据的基本操作。"想学习的可以尝试增加改和查!"意味着完整的学习过程应该包括对数据的更新(Update)和查询(Fetch)功能的实现。 ...
简单实现了对数据的增删改查,都有注释,另外我还写了一篇简书,特别详细,简单粗暴,是人都看懂~~~ 简书: http://www.jianshu.com/p/7c1ac5ce614b github: https://github.com/ty82885279/CoreData
5. CoreData 的使用: CoreData 包含实体(Entities)、属性(Attributes)和关系(Relationships)。ORMByCoreData.* 文件可能定义了与数据模型对应的 NSManagedObject 子类,封装了保存、删除、更新实体的操作。...
这里主要是讲如何使用系统自带的 CoreData 类对数据持久化到本地的操作,对于初学者十分适合使用,作为作者的我,将所有必要的注释全部写的清楚明了,使得 ios 开发人员在参考此文档时既有 demo 又有解释,实现快速上手.
### CoreData编程指南核心知识点 #### 一、CoreData概述 **CoreData** 是苹果公司为iOS、macOS...通过对上述知识点的学习与实践,开发者可以更好地理解和掌握CoreData的使用方法,从而提高应用的整体质量和用户体验。
在iOS应用开发中,数据管理是至关重要的。`CoreData`、`Realm`和`UserDefaults`是三种常用的数据持久化...通过阅读和实践其中的代码,你可以更深入地了解它们的工作原理和使用技巧,从而在实际项目中更好地选择和应用。
我在简书的博客中写了一系列总计六篇的CoreData文章,总字数大概3W+,从CoreData的基础使用到使用进阶,再到多线程、版本迁移等高级用法,讲解非常详细。 但CoreData的学习还是应该偏实践,我根据博客中讲到的知识点...
在项目的源代码中,可能会包含这些自定义的子类,以及如何在CoreData模型中使用它们。 4. **Fetch Request**:这是CoreData获取数据的主要方式,可以根据特定条件查询数据库。项目可能包含了各种fetch request的...
简单实现了对数据的增删改查,都有注释,另外我还写了一篇简书,特别详细,简单粗暴,是人都看懂~~~ 简书: http://www.jianshu.com/p/7c1ac5ce614b github: https://github.com/ty82885279/CoreData
很多人其实并不了解CoreData,经过我的研究发现CoreData各方面还是很好的,为了让大家更加了解CoreData,所以写这系列文章带大家认识一下CoreData。这系列文章将从简单到复杂的来讲一下CoreData,其中除了基础使用还...
在本示例中,可以使用URLSession或者其他第三方库如Alamofire进行网络请求。网络层应遵循同样的接口原则,通过定义协议(如NetworkService),将网络请求封装成可调用的方法,供Use Cases调用。这样可以避免在网络...
使用OCR技术和CoreData创建读取iOS应用程序的车牌使用不同库(TesseractOCRiOS,SwiftOCR和Google MLVision)的完整教程| 我们可以击败Google吗? 让我们深入了解iOS设备的视觉世界,就本教程而言,我们将阅读车牌并...