小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

腳本百事通

 quasiceo 2015-03-15

iOS:OC Lib:MagicalRecord

MagicalRecord 2.1

前言

CoreData是iOS開發(fā)中經(jīng)常使用的數(shù)據(jù)持久化的技術(shù)。但其操作過程稍微繁瑣,即使你只是實(shí)現(xiàn)簡單的存取,不涉及請求優(yōu)化,也要進(jìn)行許多配置工作,代碼量在動(dòng)輒幾十行,對新手來說也需要較大時(shí)間成本。

MagicalRecord是OC的一個(gè)庫,協(xié)助方便CoreData的工作。其吸收了Ruby on Rails的Active Record模式,目標(biāo)是:

  • 簡化Core Data相關(guān)代碼
  • 允許清晰,簡單,單行獲取
  • 當(dāng)需要優(yōu)化請求的時(shí)候,仍然允許修改NSFetchRequest

安裝

1、在 github 上下載MagicalRecord

2、下載完成,將MagicalRecord 文件夾拖到Xcode中,添加進(jìn)項(xiàng)目。添加CoreData framework。

3、在PCH文件中添加 CoreData+MagicalRecord.h

4、Option: 如果你在使用MagicalRecord方法的時(shí)候不想帶MR_ 前綴,e.g. 直接用findAll 代替 MR_findAll,就在PCH中在CoreData+MagicalRecord.h之前增加 #defin MR_SHORTHAND 即可。

環(huán)境需求

MagicalRecord 需要的環(huán)境:

  • iOS 5.x 及以上, Mac OS 10.7及以上
  • ARC

iOS4,無ARC ,可以使用兼容版本,1.8.3

用法

創(chuàng)建Model

創(chuàng)建一個(gè)Model.xcdatamodeld ,添加一個(gè)Person Entity,添加age firstname lastname 三個(gè)屬性。最后使用Editor > Create NSManagedObject Subclass ORM生成Person類。

初始化

在AppDelegate中:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    [MagicalRecord setupCoreDataStackWithStoreNamed:@"Model.sqlite"];
    // ...
    return YES;
}

- (void)applicationWillTerminate:(NSNotification *)aNotification
{
    [MagicalRecord cleanUp];
}

這樣就搞定初始化啦?。?/p>

Person *person = [Person MR_createEntity];
person.firstname = @"Frank";
person.lastname = @"Zhang";
person.age = @26;
[[NSManagedObjectContext MR_defaultContext] MR_save];

//查找數(shù)據(jù)庫中的所有Person。
NSArray *persons = [Person MR_findAll];

//查找所有的Person并按照first name排序。
NSArray *personsSorted = [Person MR_findAllSortedBy:@"firstname" ascending:YES];

//查找所有age屬性為25的Person記錄。
NSArray *personsAgeEuqals25   = [Person MR_findByAttribute:@"age" withValue:[NSNumber numberWithInt:25]];

//查找數(shù)據(jù)庫中的第一條記錄
Person *person = [Person MR_findFirst];

Person *person = ...;//此處略
person.lastname = object;        
[[NSManagedObjectContext MR_defaultContext] MR_save];

Person *person = ...;//此處略
[person MR_deleteEntity];
[[NSManagedObjectContext MR_defaultContext] MR_save];

more

   


作者:老Zhan
出處:http://www.cnblogs.com/mybkn/
本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責(zé)任的權(quán)利。

 
分類: iOS
0
0
(請您對文章做出評價(jià))
上一篇:iOS Vuforia:TextReco 增加自己的單詞庫
下一篇:Moccakids-Tangram Puzzle 限免啦!

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多