初始化Core Data的三个方法:

  1. init,初始化托管对象模型、持久化存储协调器、托管对象上下文
    1. - (id)init {
      if (debug == ) {
      NSLog(@"Running %@ '%@'",self.class, NSStringFromSelector(_cmd));
      } if (self = [super init]) {
      _model = [NSManagedObjectModel mergedModelFromBundles:nil];
      _coordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:_model];
      _context = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSMainQueueConcurrencyType];
      [_context setPersistentStoreCoordinator:_coordinator];
      } return self;
      }

      _model 的mergedModelBundles的参数为nil,表示要用main bundle里面所有的数据模型文件都初始化进来。如果有多个模型文件需要合并,可以把元素类型为NSBundles的NSArray数组传给mergedModelBundles。

      NSMainQueueConcurrencyType表示在主线程队列运行。
  2. loadStore:创建并加载持久化存储区 
    1. - (void)loadStore {
      if (debug == ) {
      NSLog(@"Running %@ '%@'",self.class, NSStringFromSelector(_cmd));
      } if (_store) {return;} NSError *error = nil;
      _store = [_coordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:[self storeURL] options:nil error:&error]; if (!_store) {
      NSLog(@"Failded to add store. Error: %@", error);
      abort();
      }else if (debug == ){
      NSLog(@"Successfully add store: %@", _store);
      }
      }
  3. 加载持久化存储区
    1. - (void)setupCoreData {
      if (debug == ) {
      NSLog(@"Running %@ '%@'",self.class, NSStringFromSelector(_cmd));
      } [self loadStore];
      }

最新文章

  1. es6
  2. DSY2287*消失之物
  3. cell 和 cellHeight的先后执行顺序
  4. jQuery实现加入购物车飞入动画效果
  5. hdu 1561 The more, The Better(树形dp,基础)
  6. Queryable.Union 方法实现json格式的字符串合并
  7. asp.net 获取当前项目路径
  8. Ubuntu12.04下使用virtualbox4.3.12 amd64安装XP系统教程
  9. pyspider解析
  10. [翻译 EF Core in Action 1.11] 何时不应该使用EF Core
  11. js 原型链和继承(转)
  12. [Node.js] 05 - Modules and Function
  13. mongoDB安装windows 64 bit
  14. appium运行时每次默认弹出appiumsetting与unlock重装,关闭这两个步骤的方法
  15. python爬虫 Scrapy2-- 爬取豆瓣电影TOP250
  16. js和html插件集
  17. 基本的RAID介绍
  18. Vault 0.10包含了web ui
  19. SQL Server附加数据库拒绝访问解决方法汇总
  20. 图片上传转base64

热门文章

  1. TCP/IP网络协议栈(转载)
  2. CentOS 6.5 开机启动指定服务
  3. PAT (Advanced Level) 1055. The World's Richest (25)
  4. 注册表检测office版本
  5. 电池和Adapter切换电路改进实验(转)
  6. cakephp 2.0 源码解读(一)
  7. Javascript Jquery 中的数组定义与操作_子木玲_新浪博客
  8. 自动安装脚本-------------基于LVMP搭建Nagios 监控
  9. [Unity AssetBundle]Asset资源处理
  10. Android 5.0之前屏幕截图的方法