美文网首页
Json[摘自MJ]

Json[摘自MJ]

作者: KevenT | 来源:发表于2018-07-26 22:17 被阅读0次

    JSON数据(NSData) -> OC对象(Foundation Object)

    • {} -> NSDictionary @{}
    • [] -> NSArray @[]
    • "jack" -> NSString @"jack"
    • 10 -> NSNumber @10
    • 10.5 -> NSNumber @10.5
    • true -> NSNumber @1
    • false -> NSNumber @0
    • null -> NSNull

    JSON数据(NSData) -> OC对象(Foundation Object)

    // 利用NSJSONSerialization类
    + (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error;
    
    • NSJSONReadingOptions
      • NSJSONReadingMutableContainers = (1UL << 0)
        • 创建出来的数组和字典就是可变
      • NSJSONReadingMutableLeaves = (1UL << 1)
        • 数组或者字典里面的字符串是可变的
      • NSJSONReadingAllowFragments
        • 允许解析出来的对象不是字典或者数组,比如直接是字符串或者NSNumber

    OC对象(Foundation Object)-> JSON数据(NSData)

    // 利用NSJSONSerialization类
    + (NSData *)dataWithJSONObject:(id)obj options:(NSJSONWritingOptions)opt error:(NSError **)error;
    

    格式化服务器返回的JSON数据

    字典转模型框架

    • Mantle
      • 所有模型都必须继承自MTModel
    • JSONModel
      • 所有模型都必须继承自JSONModel
    • MJExtension
      • 不需要强制继承任何其他类

    设计框架需要考虑的问题

    • 侵入性
      • 侵入性大就意味着很难离开这个框架
    • 易用性
      • 比如少量代码实现N多功能
    • 扩展性
      • 很容易给这个框架增加新框架

    相关文章

      网友评论

          本文标题:Json[摘自MJ]

          本文链接:https://www.haomeiwen.com/subject/jxpimftx.html