一种基于json数据格式模块加载的方法及系统的制作方法

文档序号:8298886阅读:482来源:国知局
一种基于json数据格式模块加载的方法及系统的制作方法
【技术领域】
[0001]本发明涉及应用程序处理领域,尤其涉及一种基于json数据格式模块加载的方法及系统。
【背景技术】
[0002]现有技术中,动态加载为动态加载脚本并直接运行,这样的动态加载方式不够灵活,受限于脚本语言本身。因为动态加载脚本方式,是一次性把脚本内的命令都执行完成,不能自由的停留在某一命令中,因此,执行命令不够灵活。且脚本里描述的是命令,没有对自定义对象进行描述的功能,不能描述或执行命令和对象相结合的情况。
[0003]模块加载方法一般是通过程序内部逻辑调用加载,也就是说是固定的加载方法。比如:老师讲课时,想先让同学进行朗读再做题,就需要用到朗读模块和发题模块,并且设置的顺序是先执行朗读模块后执行发题模块,程序就会先加载朗读模块然后再加载发题模块,但是如果下节课的另一个老师想先发题后朗读,或者先发两道题,再进行朗读。如果用程序内部逻辑进行加载就需要修改程序代码,而且每堂课都很有可能会不一样,那就需要给每堂课开发一款软件,这明显是不现实的,所以需要一种动态加载模块的方式。

【发明内容】

[0004]本发明所要解决的技术问题是:提供一种能够灵活的加载命令和对象、自由控制命令的执行顺序基于json数据格式模块加载的方法及系统。
[0005]为了解决上述技术问题,本发明采用的技术方案为:
[0006]一种基于json数据格式模块加载的方法,包括以下步骤:
[0007]S100、创建json数据格式的功能文件,所述功能文件包括一个以上有序的功能模块,所述功能文件包括第一功能模块;
[0008]S200、主程序读取所述功能文件,形成文件流;
[0009]S300、解析步骤S200所得文件流,读取第一功能模块,加载第一功能模块;
[0010]S400、运行步骤S300所加载的第一功能模块。
[0011]本发明采用的另一技术方案为:
[0012]一种基于json数据格式模块加载的系统,包括:编辑器、第一读取单元、解析器、第二读取单元、加载单元和运行器;
[0013]所述编辑器,用于创建json数据格式的功能文件,所述功能文件包括一个以上有序的功能模块,所述功能模块包括第一功能模块;
[0014]所述第一读取单元,用于主程序读取所述功能文件,形成文件流;
[0015]所述解析器,用于解析所述文件流;
[0016]所述第二读取单元,用于读取第一功能模块;
[0017]所述加载单元,用于加载第一功能模块;
[0018]所述运行器,用于运行所加载的第一功能模块。
[0019]本发明的有益效果在于:通过读取功能文件,形成文件流,解析文件流,读取功能模块,并加载和运行功能模块,实现模块动态加载,通过本发明提供的方法及系统,能够灵活的加载命令和对象、自由控制命令的执行顺序,也有利于系统功能的扩展。
【附图说明】
[0020]图1为本发明【具体实施方式】的基于json数据格式模块加载的方法的步骤图;
[0021]图2为本发明【具体实施方式】的基于json数据格式模块加载的系统的结构示意图;
[0022]标号说明:
[0023]10、编辑器;20、第一读取单元;30、解析器;40、第二读取单元;50、加载单元;60、
运行器。
【具体实施方式】
[0024]为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
[0025]本发明最关键的构思在于:通过读取功能文件,形成文件流,解析文件流,读取功能模块,并加载和运行功能模块,实现模块动态加载。
[0026]请参照图1,为本发明【具体实施方式】的基于json数据格式模块加载的方法的步骤图,具体如下:
[0027]—种基于json数据格式模块加载的方法,包括以下步骤:
[0028]S100、创建json数据格式的功能文件,所述功能文件包括一个以上有序的功能模块,所述功能文件包括第一功能模块;
[0029]S200、主程序读取所述功能文件,形成文件流;
[0030]S300、解析步骤S200所得文件流,读取第一功能模块,加载第一功能模块;
[0031]S400、运行步骤S300所加载的第一功能模块。
[0032]从上述描述可知,本发明的有益效果在于:通过读取功能文件,形成文件流,解析文件流,读取功能模块,并加载和运行功能模块,实现模块动态加载,通过本发明提供的方法,能够灵活的加载命令和对象、自由控制命令的执行顺序,也有利于系统功能的扩展。
[0033]进一步的,所述步骤S100还包括:预设一存储单元,用于存储所述功能文件。
[0034]由上述描述可知,通过预设一存储单元,将创建的功能文件放置在指定位置,便于主程序读取。
[0035]进一步的,所述功能模块为数据、事件或动作。所述文件流为功能文件的二进制代码。
[0036]由上述描述可知,所述功能模块为数据、事件或动作,通过动态加载,所呈现的效果不一样,实现动态目的。
[0037]进一步的,所述步骤S400具体为:预设一显示界面,运行步骤S300所加载的功能模块,并显示在所述显示界面上。
[0038]由上述描述可知,通过预设一显示界面,可用于显示运行结果。
[0039]进一步的,方法还包括所述步骤S500具体为:判断是否所有功能模块已运行,若是,结束步骤;若否,返回步骤S300。
[0040]进一步的,所述步骤S300的功能模块加载过程为:
[0041]S301、主程序创建一模块对象列表,初始化预设模块位置;
[0042]S302、主程序读取json数据文件模块位置的json对象,返回json对象的标签下模块名称和模块属性对应的属性值,所述模块名称的属性值为N,所述模块属性的属性值为A;
[0043]S303、主程序根据步骤S302所得N和A创建模块对象;
[0044]S304、主程序将步骤S303所得模块对象加入到对象列表中,所述对象列表长度加I ;
[0045]S305、主程序判断所述模块位置的长度是否大于对象列表的长度,如果所述模块位置的长度大于对象列表的长度,则返回到步骤S302,执行步骤S302到步骤S304 ;如果小于或等于对象列表的长度,则进入步骤S306 ;
[0046]S306、主程序加载步骤S305的模块位置的对象列表。
[0047]请参照图2,为本发明【具体实施方式】的基于json数据格式模块加载的系统的结构示意图,具体如下:
[0048]一种基于json数据格式模块加载的系统,包括:编辑器10、第一读取单元20、解析器30、第二读取单元40、加载单元50和运行器60 ;
[0049]所述编辑器10,用于创建json数据格式的功能文件,所述功能文件包括一个以上有序的功能模块,所述功能模块包括第一功能模块;
[0050]所述第一读取单元20,用于主程序读取所述功能文件,形成文件流;
[0051]所述解析器30,用于解析所述文件流;
[0052]所述第二读取单元40,用于读取第一功能模块;
[0053]所述加载单元50,用于加载第一功能模块;
[0054]所述运行器60,用于运行所加载的第一功能模块。
[0055]从上述描述可知,本发明的有益效果在于:通过读取功能文件,形成文件流,解析文件流,读取功能模块,并加载和运行功能模块,实现模块动态加载,通过本发明提供的系统,能够灵活的加载命令和对象、自由控制命令的执行顺序,也有利于系统功能的扩展。
[0056]进一步的,系统还包括存储单元,用于存储功能文件。
[0057]由上述描述可知,通过预设一存储单元,将创建的功能文件放置在指定位置,便于主程序读取。
[0058]进一步的,系统还包括显示单元,用于将运行后的功能模块,显示在所述显示界面上。
[0059]由上述描述可知,通过预设一显示界面,可用于显示运行结果。
[0060]进一步的,系统还包括判断单元,用于判断是否所有功能模块已运行。
[0061]实施例一
[0062]步骤1、创建、编辑json数据格式的功能文件,并放置指定位置,所述功能文件包含一系列功能模块,且所述功能模块是有序的;
[0063]步骤2、主程序从
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1