[发明专利]基于Mac平台的JSON数据生成实体文件的方法有效

专利信息
申请号: 201611042324.7 申请日: 2016-11-23
公开(公告)号: CN106776779B 公开(公告)日: 2020-08-25
发明(设计)人: 万业超 申请(专利权)人: 北京车网通科技有限公司
主分类号: G06F16/25 分类号: G06F16/25
代理公司: 北京市盛峰律师事务所 11337 代理人: 梁艳
地址: 100080 北京市*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 mac 平台 json 数据 生成 实体 文件 方法
【说明书】:

发明公开了一种基于Mac平台的JSON数据生成实体文件的方法,涉及实体文件的生成技术领域。该方法,通过JSON数据类型分析和字段解析,转换成对应类型的目标程序的model,并封装成实体文件,实现了自动将JSON字段与Cocoa的程序中的类型进行映射,支持4种Model的格式(NSObject,Mantle,Swift,ObjectMapper),减少了利用现有技术在编写Model上面花费的时间,成倍的节省开发时间;通过程序纪录分析数据名称与类型,减少了出错的几率,使开发人员可以将更多的时间投入到程序逻辑开发中。

技术领域

本发明涉及实体文件的生成技术领域,尤其涉及一种基于Mac平台的JSON数据生成实体文件的方法。

背景技术

目前,将JSON数据生成实体文件(Model),一般使用一个命令行工具,通过一个给定的JSON文件来生成Swift相关的Model,这种方法在使用过程中,存在以下缺陷:

1.命令行工具使用成本比较高,需要记录相应的指令集才行;

2.用户拿到给定的JSON后还需要创立一个相应的JSON文件,而这个步骤在实体文件生成过程中没有什么用途,显得没有必要,浪费了资源空间;

3.NSCoding的支持不可选,存在冗余代码的情况,从而使手动修改Model的成本变高;

4.模版单一,只能生成NSObject类型或Swift对应的Model类;

5.不能定制头部说明文档,比如作者,机构名;

6.无法兼容第三方框架的Model,由于传统的Model在JSON映射实体需要编写大量的代码,而第三方Model很好的解决了转换的复杂度。

另外,在编写接口对应的Model类这些工作中,往往花费的时间占用了很大的一部分开发时间,在编写过程中需要对照JSON数据进行一一的数据判断,与字段名称对应编写,容易出错,效率很低。

发明内容

本发明的目的在于提供一种基于Mac平台的JSON数据生成实体文件的方法,从而解决现有技术中存在的前述问题。

为了实现上述目的,本发明采用的技术方案如下:

一种基于Mac平台的JSON数据生成实体文件的方法,包括如下步骤:

S1,读取JSON数据,判断所述JSON数据的类型;

S2,根据所述JSON数据的类型,对所述JSON数据进行解析,得到所述JSON数据的所有字段;

S3,根据每个所述JSON数据的字段,拼装成对应的model的字符,所述字符包括所述JSON数据的字段的名称和类型;

S4,根据所述JSON数据的类型,选取对应类型的实体类模板;

S5,根据所述模板的类型对所述模板进行解析,得到所述模板的格式;

S6,将所述模板的格式与所述model的字符拼装,并写入到文件中,生成model类。

优选地,所述JSON数据的类型包括:NSObject,Mantle,Swift和ObjectMapper。

优选地,S2中,所述对所述JSON数据进行解析,得到所述JSON数据的所有字段,具体为:将所述JSON数据转换为NSDictionary字典,通过NSDictionary的allkeys方法,获取所有的JSON属性名,并保存到数组中。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京车网通科技有限公司,未经北京车网通科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611042324.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top