iOS數據存儲之Core Data(一)

iOS數據存儲之Core Data(一)

Core Data 基礎

Core Data 是一個API集合箭启,被設計用來簡化數據對象的持久存儲。Core Data 提供一種模型用于保存模型對象并在之后取回他們栖榨。Core Data 還管理對對象模型的改變找都,提供撤銷支持捏膨,并確保模型對象間關系的一致性却汉。

Core Data 架構

上圖是Core Data的設計概覽驯妄。其中的關鍵組件是數據存儲(data store)、持久存儲協調器(Persistent Store Coordinator)合砂、托管對象模型(Managed Object Model)和托管對象上下文(Managed Object Context)青扔。

1. 數據存儲

數據存儲是保存數據的一個或一組文件。它是當保存消息發(fā)送到Coredata 后實際寫入到磁盤的文件既穆。通常在移動應用程序中只有一個數據存儲文件。
依賴于創(chuàng)建數據存儲時使用的參數雀鹃,數據存儲可以是一個二進制文件幻工、SQLITE數據庫或一個內存中的數據文件。

2. 持久存儲協調器

持久協調存儲器在托管對象上下文和數據存儲之間扮演中間人的角色黎茎。協調器從上下文中獲得數據請求并將它們轉發(fā)給合適的數據存儲囊颅,協調器還允許上下文訪問多個數據存儲。協調器將數據存儲和上下文關聯在一起傅瞻。持久存儲協調器是NSPersistentCoordinator類的實例踢代。持久存儲協調器不是線程安全的。

3. 托管對象模型

托管對象模型代表數據模型架構嗅骄,是NSManagedObjectModel類的實例胳挎。
模型由一組實體組成,他們定義了應用程序中的數據對象溺森。數據模型通常使用XCode的提供的圖形化數據建模工具創(chuàng)建慕爬。數據模型應該定義程序中使用的數據對象。持久協調存儲器依據數據模型中定義的約定創(chuàng)建托管對象屏积。

4. 托管對象上下文

托管對象上下文提供訪問托管數據對象的接口医窿,托管對象上下文是NSManagedObjectContext類的實例。上下文用于保存所有托管對象炊林,托管對象是NSManagedObject類或其之類的實例姥卢。可以在上下文中添加對象渣聚、刪除對象独榴、修改對象,當準備好后奕枝,可以讓上下文將當前狀態(tài)提交到磁盤保存括眠。可以在上下文中創(chuàng)建獲取請求將數據從存儲中取回到上下文倍权,進而對數據進行處理掷豺。

小結

代碼在這里

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末捞烟,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子当船,更是在濱河造成了極大的恐慌题画,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件德频,死亡現場離奇詭異苍息,居然都是意外死亡,警方通過查閱死者的電腦和手機壹置,發(fā)現死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門竞思,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人钞护,你說我怎么就攤上這事盖喷。” “怎么了难咕?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵课梳,是天一觀的道長。 經常有香客問我余佃,道長暮刃,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任爆土,我火速辦了婚禮椭懊,結果婚禮上,老公的妹妹穿的比我還像新娘步势。我一直安慰自己灾搏,他們只是感情好,可當我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布立润。 她就那樣靜靜地躺著狂窑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪桑腮。 梳的紋絲不亂的頭發(fā)上泉哈,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天,我揣著相機與錄音破讨,去河邊找鬼丛晦。 笑死,一個胖子當著我的面吹牛提陶,可吹牛的內容都是我干的烫沙。 我是一名探鬼主播,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼隙笆,長吁一口氣:“原來是場噩夢啊……” “哼锌蓄!你這毒婦竟也來了升筏?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤瘸爽,失蹤者是張志新(化名)和其女友劉穎您访,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體剪决,經...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡灵汪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了柑潦。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片享言。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖渗鬼,靈堂內的尸體忽然破棺而出览露,到底是詐尸還是另有隱情,我是刑警寧澤乍钻,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布肛循,位于F島的核電站铭腕,受9級特大地震影響银择,放射性物質發(fā)生泄漏。R本人自食惡果不足惜累舷,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一浩考、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧被盈,春花似錦析孽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至身堡,卻和暖如春邓尤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背贴谎。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工汞扎, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人擅这。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓澈魄,卻偏偏與公主長得像,于是被迫代替她去往敵國和親仲翎。 傳聞我的和親對象是個殘疾皇子痹扇,可洞房花燭夜當晚...
    茶點故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內容