zoukankan      html  css  js  c++  java
  • 数据存储-CoreData总结

    CoreData

    /*英译  Entity:实体 Attributes:属性 binary:二进制 persistent:持续化 coordinator:协调者 meging:合并 configuration:配置 representation:展示 picker:选择 source:来源 representation:展示 fetch:抓取* cashe:缓存 sort:排序 protocal:协议*/

    PS:mARC->ARC retain->strong,建数据库要写单例,打开数据库要懒加载(init)

    //懒加载

    - (id)init

    {

        self=[super init];/

        if(self){

            [self openDB];

        }

        return self;

    }

    //将获取文件写进数据库

    准备1 :导入CoreData框架,添加头文件 -> 建模型组 -> 模型组中建CoreData及定义实体(建好数据模型,设置实体) -> 创建服务层组(services-DataManager用于交互数据库和程序) -> 单例方法初始化对象(工厂方法即可实现单例对象),懒加载打开数据库(创建时打开数据库)->设置打开数据库方法-实例化调度者(参数:包含模型,及为之前实体化的模型,要合并)-给调度者添加持久化存储数据库(参数:制定类型,指定沙盒中建立的数据表空文件的路径,错误)

    >>>>>这部分将实体化的数据(模型)成功的放进沙盒中创建的好得(数据库)中了,即数据库,数据表建立完成并放到沙盒及拥有调度者<<<<<<<

    准备2 :判断错误为nil时,实例化数据库操作的上下文(类似句柄)->设置上下文的调度属性为调度者(设置类的成员属性readonly为上下文,这样可以之后调度使用)

    >>>>>  这样context就可以操纵数据库了 <<<<<<

    准备3:要给上下文插入一个Person类型的实体 通过UI交互->Person拿到属性值->传给Person实体->传给上下文->上下文保存

    >>>>>>从而通过"NSEntityDescription"添加实体到上下文的目的/即添加记录到数据库(虽然是合并的实体但是他会保存到数据库的对应的Person数据表中 )<<<<<

    实例化模型并合并->实例化model的调度者->添加数据库 ->当数据库调度成功,初始化管理项目上下文,讲调度这赋值给上下文(上下文可用成员变量保存,以便日后操纵数据库)

    //从照片库选择图片 UIImagePickerController

    实例化照片选择器->指定照片来源->设置代理及可以编辑->显示选择器->实现代理方法->从info中选出照片(字典)并设置->关闭选择器

    UIImage imageWithData<->UIImagePNG

    //谓词

    /*英译:  evaluate:评估 capacity:能力 filter:过滤 contains:包含 */

    谓词就是定义一个规则

    创建谓词->数组调用谓词方法过滤

    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%K CONTAINS '8'", @"name"];

    // 对数组进行过滤

    NSLog(@"匹配结果 %@", [arrayM filteredArrayUsingPredicate:predicate]);

    //UITableView的几个方法 commit:交付

    可编辑,做删除canEdit

    提交编辑commitEdit

    fmdb xmpp marc 内存  c++

    lbs 冒泡 block定义 nsstring 数组 内存 t

  • 相关阅读:
    三:Redis连接池、JedisPool详解、Redisi分布式
    vmware workstation14永久激活密钥分享
    人工智能二:TensorFlow环境搭建
    消息队列二:关于消息队列
    消息队列一:为什么需要消息队列(MQ)?
    java基础进阶一:String源码和String常量池
    人工智能一:Al学习路线
    Python学习二:词典基础详解
    Python学习一:序列基础详解
    什么是Hive
  • 原文地址:https://www.cnblogs.com/ly1973/p/5394409.html
Copyright © 2011-2022 走看看