swift3.0 CoreData使用变简单了哦

ios开发的大家,肯定都知道OC中的CoreData特别难用;swift3.0改变了CoreData的用法,非常方便开发者使用!

一、创建.xcdatamodeld文件;初始化字段

swift3.0 CoreData使用变简单了哦_第1张图片
demo的使用

二、save数据

 // 获取Context
    func getContext () -> NSManagedObjectContext {
        let appDelegate = UIApplication.shared.delegate as! AppDelegate
        return appDelegate.persistentContainer.viewContext
    }
// 存储Person
    func storePerson(name:String, age:Int){
        let context = getContext()
        // 定义一个entity,这个entity一定要在xcdatamodeld中做好定义
        let entity = NSEntityDescription.entity(forEntityName: "Person", in: context)
        
        let person = NSManagedObject(entity: entity!, insertInto: context)
        
        person.setValue(name, forKey: "name")
        person.setValue(age, forKey: "age")
        
        do {
        try context.save()
            print("saved")
        }catch{
            print(error)
        }
    }

3、读取数据

    // 获取某一entity的所有数据
    func getPerson(){

        let fetchRequest = NSFetchRequest(entityName: "Person")
        do {
            let searchResults = try getContext().fetch(fetchRequest)
            print("numbers of \(searchResults.count)")
            
            for p in (searchResults as! [NSManagedObject]){
                print("name:  \(p.value(forKey: "name")!) age: \(p.value(forKey: "age")!)")
            }
        } catch  {
            print(error)
        }
    }

你可能感兴趣的:(swift3.0 CoreData使用变简单了哦)