Coredata太难用了


于是我写了这个框架, 它可以很超简单地用于json解析和sqlite 增删改查。

这个库是在JSONModel基础之上做的.

JSONModel是用来解析json的一个库, 解析json完成之后, 我们需要做数据存储, 怎么办?

  • 方法1. 存储返回的json到NSUserDefaults里面, 但是这样做update或者select的时候就蛋疼了

  • 方法2. 自己用sqlite存起来, 但是这样需要自己把每个字段先建好, 每个参数insert的时候, 都需要写一段sql, 太麻烦!

  • 方法3. 使用coredata, 但是coredata却又有众所周知超难用的地方, 并且不适合数据量大了之后使用.

这些方法都糟糕透了!

于是我写了这个框架, 融合了json解析, 巨简单的sqlite增删改查.

项目地址:
https://github.com/ben46/jsonmodel

如何安装:
pod 'JSONModel', :git => 'https://github.com/ben46/JSONModel.git'

如何使用:

服务器返回的JSON:


{
  "ID": "1",
  "name": "Product name",
  "price": 12.95
}

定义你的数据model

@interface ProductModel : JSONModel
@property (assign, nonatomic) NSNumber *ID;
@property (strong, nonatomic) NSString* name;
@property (assign, nonatomic) float price;
@end

某个你的代码处 :

#import "CountryModel.h"
...

NSString* json = (fetch here JSON from Internet) ... 
NSError* err = nil;

CountryModel* country = [[CountryModel alloc] initWithString:json error:&err];
 // 自动建表 && 自动生成sql && 自动保存数据
[country JM_save];

// find the value matches the primary key
CountryModel* countryYouJustSaved = [CountryModel JM_find:@1]; 
NSLog(@"%@", [countryYouJustSaved toDictionary]);

欢迎大家提issue, 我会在第一时间修复.

你可能感兴趣的:(Coredata太难用了)