Mantle,JSONModel,MJExtension,YYModel的比较
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mantle,JSONModel,MJExtension,YYModel的比较相关的知识,希望对你有一定的参考价值。
参考技术A 把JSON数据转换为模型,其他的不多说,且看下面分解。Mantle
上面介绍的很详细,具体其他用法自行查看。
基本步骤:
基本原理:
测试API
如果你打开了,那数据基本上就是这样,仅供测试使用,无其他用途。
使用火狐浏览器打开如下:
MantleModel.h
MantleModel.m
对JSONKeyPathsByPropertyKey上面写了两种,其中的MantleDataModel你可以利用JSONKeyPathsByPropertyKey把所有属性按字典列出来:
或许你也可以直接写成这样:
利用属性名+JSONTransformer,对于dateJSONTransformer其中简单进行日期转换。
进行关键字替换:
当你的 Model 里的所有属性的名字和 JSON 里的所有 key 的名字完全相同的时候,你就可以用这个方法直接生成一个 NSDictionary, 直接返回:
比如这个:
你也可以直接这样:
优点:
缺点:
其他等等可以自行查看 Mantle
JSONModel
【对应上面测试API,数据仅供测试使用】:
JSONModel.h
JSONModel.m
关键值替换
忽略属性
设置某个字段为可选(为空)
设置所有的属性为可选(为空)
自动把下划线方式的命名转为驼峰命名属性,大小写转换
生成模型:
其他等等可以自行查看 JSONModel
YYModel
YYJSONModel.h
YYJSONModel.m
关键值替换
黑名单 与 白名单:
数据校验与自定义转换
JSON:
Model:
容器类属性
其他等等可以自行查看 YYModel
MJExtension
MJExtensionModel.h
MJExtensionModel.m
还是
其他等等可以自行查看 MJExtension
ios JSON 模型转换库评测
终于结束了。
以上是关于Mantle,JSONModel,MJExtension,YYModel的比较的主要内容,如果未能解决你的问题,请参考以下文章