// // MPCoreDataHandlerManager.swift // MusicPlayer // // Created by Mr.Zhou on 2024/4/1. // import Foundation import CoreData ///CoreData数据库处理器 class MPCoreDataHandlerManager { //单例工具 static let shared = MPCoreDataHandlerManager() //数据仓库 private lazy var persistentContainer: NSPersistentContainer = { //数据仓库名为XXX.cdatamodeld中的XXX let container = NSPersistentContainer(name: "MusicPlayer") container.loadPersistentStores { (_, error) in if let error = error { //加载数据仓库失败 fatalError("Failed to load persistent stores: \(error)") }else { //加载数据仓库成功 print("Successfully to load persistent stores") } } return container }() //托管(映射)对象空间 var context: NSManagedObjectContext { return persistentContainer.viewContext } //保存对象空间 func saveContext() { //检索对象空间是否进行了更新 if context.hasChanges { do { //保存对象空间 try context.save() } catch { //保存失败 let nserror = error as NSError fatalError("Unresolved error \(nserror), \(nserror.userInfo)") } } } }