CN108037915A - 一种获取json配置文件的方法及终端 - Google Patents
一种获取json配置文件的方法及终端 Download PDFInfo
- Publication number
- CN108037915A CN108037915A CN201711083083.5A CN201711083083A CN108037915A CN 108037915 A CN108037915 A CN 108037915A CN 201711083083 A CN201711083083 A CN 201711083083A CN 108037915 A CN108037915 A CN 108037915A
- Authority
- CN
- China
- Prior art keywords
- json
- files
- mobile application
- node
- traversal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明提供一种获取json配置文件的方法及终端,在移动应用编译期读取json文件,并解析所述json文件;在移动应用运行时,根据解析后的json文件,生成java对象;将json文件的读取及json文件的解析移到移动应用的编译期,移动应用运行时只需进行生成java对象的步骤,减少了移动应用运行时获取json配置文件需要执行的步骤,以此换取运行时移动应用启动的速度,提高了移动应用的启动速度。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种获取json配置文件的方法及终端。
背景技术
json数据通信协议是目前移动开发用得最广泛的一种协议,json的轻快性非常适合移动平台,目前绝大多数移动应用接口均采用json作为数据传输方式。而对于移动应用来说,其启动速度是一个重要指标,因为其启动速度的快慢将直接影响到用户体验。
当启动移动应用时,需要获取相应的json配置文件,所述获取json配置文件包括三个步骤:1、读取json文件;2、解析json文件、3、生成java对象,上述三个步骤都是在移动应用启动期间进行的,如果移动应用比较复杂,则其启动时需要获取的json配置文件比较多,而由于获取每个json配置文件均需要上述三个步骤,因此,json配置文件的获取就会拖慢移动应用的启动,影响移动应用的启动速度。
发明内容
本发明所要解决的技术问题是:提供一种获取json配置文件的方法及终端,提高移动应用启动期间获取json配置文件的速度,从而提高移动应用的启动速度。
为了解决上述技术问题,本发明采用的一种技术方案为:
一种获取json配置文件的方法,包括步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种获取json配置文件的终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
本发明的有益效果在于:将json文件的读取及json文件的解析移到移动应用的编译期,移动应用运行时只需进行生成java对象的步骤,减少了移动应用运行时获取json配置文件需要执行的步骤,以此换取运行时移动应用启动的速度,提高了移动应用的启动速度。
附图说明
图1为本发明实施例的获取json配置文件的方法流程图;
图2为本发明实施例的获取json配置文件的终端的结构示意图;
标号说明:
1、获取json配置文件的终端; 2、存储器; 3、处理器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:将json文件的读取及json文件的解析移到移动应用的编译期,移动应用运行时只需进行生成java对象的步骤。
请参照图1,一种获取json配置文件的方法,其特征在于,包括步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
从上述描述可知,本发明的有益效果在于:将json文件的读取及json文件的解析移到移动应用的编译期,移动应用运行时只需进行生成java对象的步骤,减少了移动应用运行时获取json配置文件需要执行的步骤,以此换取运行时移动应用启动的速度,提高了移动应用的启动速度。
进一步的,所述步骤S1中在移动应用编译期读取json文件具体包括:
确定json文件所在的目录;
在移动应用编译期遍历所述目录以读取所述目录中的json文件。
由上述描述可知,先确定json文件所在的目录,再遍历所述目录中以读取json文件,提高了读取json文件的速度。
进一步的,所述步骤S1中解析所述json文件具体包括:
将所述json文件转化成java文件。
由上述描述可知,在编译期即将所述json文件转化成java文件,方便后续直接根据java文件生成java对象,提高获取json配置文件的速度。
进一步的,将所述json文件转化成java文件具体包括:
将所述json文件转换成结构化数据,对所述结构化数据进行递归遍历,并将所述结构化数据写入java文件。
进一步的,所述结构化数据为树形结构数据;
对所述结构化数据进行递归遍历具体包括:
S11、遍历所述树形结构数据;
S12、当遍历的节点没有子节点时,直接用java语句描述所述节点的内容及其与父节点的关联;
S13、当遍历的节点是个map时,将所述节点作为新的树形结构数据,并返回步骤S11;
S14、当遍历的节点是个list时,遍历list中各个链表中的各个元素,分别将链表中的各个元素作为新的树形结构数据,并返回步骤S11。
由上述描述可知,通过将所述json文件转化成结构化数据,并进行递归遍历以生成java文件,既保证所生成的java文件的准确性,也提高生成java文件的速度。
请参照图2,一种获取json配置文件的终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
从上述描述可知,本发明的有益效果在于:将json文件的读取及json文件的解析移到移动应用的编译期,移动应用运行时只需进行生成java对象的步骤,减少了移动应用运行时获取json配置文件需要执行的步骤,以此换取运行时移动应用启动的速度,提高了移动应用的启动速度。
进一步的,所述步骤S1中在移动应用编译期读取json文件具体包括:
确定json文件所在的目录;
在移动应用编译期遍历所述目录以读取所述目录中的json文件。
由上述描述可知,先确定json文件所在的目录,再遍历所述目录中以读取json文件,提高了读取json文件的速度。
进一步的,所述步骤S1中解析所述json文件具体包括:
将所述json文件转化成java文件。
由上述描述可知,在编译期即将所述json文件转化成java文件,方便后续直接根据java文件生成java对象,提高获取json配置文件的速度。
进一步的,将所述json文件转化成java文件具体包括:
将所述json文件转换成结构化数据,对所述结构化数据进行递归遍历,并将所述结构化数据写入java文件。
进一步的,所述结构化数据为树形结构数据;
对所述结构化数据进行递归遍历具体包括:
S11、遍历所述树形结构数据;
S12、当遍历的节点没有子节点时,直接用java语句描述所述节点的内容及其与父节点的关联;
S13、当遍历的节点是个map时,将所述节点作为新的树形结构数据,并返回步骤S11;
S14、当遍历的节点是个list时,遍历list中各个链表中的各个元素,分别将链表中的各个元素作为新的树形结构数据,并返回步骤S11。
由上述描述可知,通过将所述json文件转化成结构化数据,并进行递归遍历以生成java文件,既保证所生成的java文件的准确性,也提高生成java文件的速度。
实施例一
请参照图1,一种获取json配置文件的方法,其特征在于,包括步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
其中,在移动应用编译期读取json文件具体包括:
确定json文件所在的目录;
在移动应用编译期遍历所述目录以读取所述目录中的json文件;
解析所述json文件具体包括:
将所述json文件转化成java文件;
将所述json文件转化成java文件具体包括:
将所述json文件转换成结构化数据,对所述结构化数据进行递归遍历,并将所述结构化数据写入java文件;
所述结构化数据为树形结构数据;
对所述结构化数据进行递归遍历具体包括:
S11、遍历所述树形结构数据;
S12、当遍历的节点没有子节点时,直接用java语句描述所述节点的内容及其与父节点的关联;
S13、当遍历的节点是个map时,将所述节点作为新的树形结构数据,并返回步骤S11;
S14、当遍历的节点是个list时,遍历list中各个链表中的各个元素,分别将链表中的各个元素作为新的树形结构数据,并返回步骤S11;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
实施例二
请参照图2,一种获取json配置文件的终端1,包括存储器2、处理器3以及存储在所述存储器2上并可在所述处理器3上运行的计算机程序,所述处理器3执行所述计算机程序时实现以下步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
其中,在移动应用编译期读取json文件具体包括:
确定json文件所在的目录;
在移动应用编译期遍历所述目录以读取所述目录中的json文件;
解析所述json文件具体包括:
将所述json文件转化成java文件;
将所述json文件转化成java文件具体包括:
将所述json文件转换成结构化数据,对所述结构化数据进行递归遍历,并将所述结构化数据写入java文件;
所述结构化数据为树形结构数据;
对所述结构化数据进行递归遍历具体包括:
S11、遍历所述树形结构数据;
S12、当遍历的节点没有子节点时,直接用java语句描述所述节点的内容及其与父节点的关联;
S13、当遍历的节点是个map时,将所述节点作为新的树形结构数据,并返回步骤S11;
S14、当遍历的节点是个list时,遍历list中各个链表中的各个元素,分别将链表中的各个元素作为新的树形结构数据,并返回步骤S11;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
综上所述,本发明提供的一种获取json配置文件的方法及终端,将json文件的读取及json文件的解析移到移动应用的编译期,移动应用运行时只需进行生成java对象的步骤,减少了移动应用运行时获取json配置文件需要执行的步骤,以此换取运行时移动应用启动的速度,提高了移动应用的启动速度。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种获取json配置文件的方法,其特征在于,包括步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
2.根据权利要求1所述的获取json配置文件的方法,其特征在于,
所述步骤S1中在移动应用编译期读取json文件具体包括:
确定json文件所在的目录;
在移动应用编译期遍历所述目录以读取所述目录中的json文件。
3.根据权利要求1所述的获取json配置文件的方法,其特征在于,
所述步骤S1中解析所述json文件具体包括:
将所述json文件转化成java文件。
4.根据权利要求3所述的获取json配置文件的方法,其特征在于,
将所述json文件转化成java文件具体包括:
将所述json文件转换成结构化数据,对所述结构化数据进行递归遍历,并将所述结构化数据写入java文件。
5.根据权利要求4所述的获取json配置文件的方法,其特征在于,
所述结构化数据为树形结构数据;
对所述结构化数据进行递归遍历具体包括:
S11、遍历所述树形结构数据;
S12、当遍历的节点没有子节点时,直接用java语句描述所述节点的内容及其与父节点的关联;
S13、当遍历的节点是个map时,将所述节点作为新的树形结构数据,并返回步骤S11;
S14、当遍历的节点是个list时,遍历list中各个链表中的各个元素,分别将链表中的各个元素作为新的树形结构数据,并返回步骤S11。
6.一种获取json配置文件的终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
S1、在移动应用编译期读取json文件,并解析所述json文件;
S2、在移动应用运行时,根据解析后的json文件,生成java对象。
7.根据权利要求6所述的获取json配置文件的终端,其特征在于,
所述步骤S1中在移动应用编译期读取json文件具体包括:
确定json文件所在的目录;
在移动应用编译期遍历所述目录以读取所述目录中的json文件。
8.根据权利要求6所述的获取json配置文件的终端,其特征在于,
所述步骤S1中解析所述json文件具体包括:
将所述json文件转化成java文件。
9.根据权利要求8所述的获取json配置文件的终端,其特征在于,
将所述json文件转化成java文件具体包括:
将所述json文件转换成结构化数据,对所述结构化数据进行递归遍历,并将所述结构化数据写入java文件。
10.根据权利要求9所述的获取json配置文件的终端,其特征在于,
所述结构化数据为树形结构数据;
对所述结构化数据进行递归遍历具体包括:
S11、遍历所述树形结构数据;
S12、当遍历的节点没有子节点时,直接用java语句描述所述节点的内容及其与父节点的关联;
S13、当遍历的节点是个map时,将所述节点作为新的树形结构数据,并返回步骤S11;
S14、当遍历的节点是个list时,遍历list中各个链表中的各个元素,分别将各个链表中的各个元素作为新的树形结构数据,并返回步骤S11。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711083083.5A CN108037915A (zh) | 2017-11-07 | 2017-11-07 | 一种获取json配置文件的方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711083083.5A CN108037915A (zh) | 2017-11-07 | 2017-11-07 | 一种获取json配置文件的方法及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108037915A true CN108037915A (zh) | 2018-05-15 |
Family
ID=62092829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711083083.5A Pending CN108037915A (zh) | 2017-11-07 | 2017-11-07 | 一种获取json配置文件的方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108037915A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909523A (zh) * | 2019-12-02 | 2020-03-24 | 中国银行股份有限公司 | 一种数据处理方法及装置 |
CN111127306A (zh) * | 2019-12-02 | 2020-05-08 | 福建天泉教育科技有限公司 | 一种还原pptx文件中图片透明度的方法及终端 |
CN111158564A (zh) * | 2019-12-20 | 2020-05-15 | 福建天泉教育科技有限公司 | 一种还原PowerPoint中图片裁剪效果的方法及终端 |
CN111325007A (zh) * | 2020-01-22 | 2020-06-23 | 福建天泉教育科技有限公司 | 一种pptx文件的批注解析方法及终端 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605733A (zh) * | 2013-11-20 | 2014-02-26 | 山东浪潮齐鲁软件产业股份有限公司 | 基于json数组的页面布局存储方法 |
CN107220096A (zh) * | 2017-04-20 | 2017-09-29 | 北京小度信息科技有限公司 | 一种json数据解析方法及装置 |
-
2017
- 2017-11-07 CN CN201711083083.5A patent/CN108037915A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605733A (zh) * | 2013-11-20 | 2014-02-26 | 山东浪潮齐鲁软件产业股份有限公司 | 基于json数组的页面布局存储方法 |
CN107220096A (zh) * | 2017-04-20 | 2017-09-29 | 北京小度信息科技有限公司 | 一种json数据解析方法及装置 |
Non-Patent Citations (2)
Title |
---|
WEIXIN_34050427: "java编译运行引用外部jar包读取json文件", 《HTTPS://MY.OSCHINA.NET/LCQ3FC3/BLOG/645051》 * |
曹丽东: "面向Restful Web Service的相似数据对象搜索技术", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909523A (zh) * | 2019-12-02 | 2020-03-24 | 中国银行股份有限公司 | 一种数据处理方法及装置 |
CN111127306A (zh) * | 2019-12-02 | 2020-05-08 | 福建天泉教育科技有限公司 | 一种还原pptx文件中图片透明度的方法及终端 |
CN110909523B (zh) * | 2019-12-02 | 2023-10-27 | 中国银行股份有限公司 | 一种数据处理方法及装置 |
CN111158564A (zh) * | 2019-12-20 | 2020-05-15 | 福建天泉教育科技有限公司 | 一种还原PowerPoint中图片裁剪效果的方法及终端 |
CN111325007A (zh) * | 2020-01-22 | 2020-06-23 | 福建天泉教育科技有限公司 | 一种pptx文件的批注解析方法及终端 |
CN111325007B (zh) * | 2020-01-22 | 2022-10-21 | 福建天泉教育科技有限公司 | 一种pptx文件的批注解析方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220318336A1 (en) | Method and Terminal Device for Extracting Web Page Content | |
CN108037915A (zh) | 一种获取json配置文件的方法及终端 | |
AU2014275115B2 (en) | Debugging native code by transitioning from execution in native mode to execution in interpreted mode | |
CN109522018B (zh) | 页面处理方法、装置及存储介质 | |
US10042740B2 (en) | Techniques to identify idiomatic code in a code base | |
TWI525543B (zh) | 混合式動態碼編譯裝置、方法及其服務系統 | |
CN111831384B (zh) | 语言切换方法和装置、设备及存储介质 | |
EP2754044A2 (en) | Profile guided jit code generation | |
CN105094786A (zh) | 基于JavaScript定制页面的方法及系统 | |
US20120030562A1 (en) | Device and method for generating customized webpages | |
CN103412754A (zh) | 动态语言代码执行方法和装置 | |
JP2023541186A (ja) | 可視化ページレンダリング方法、装置、機器及び記憶媒体 | |
CN114153459A (zh) | 接口文档生成方法及装置 | |
CN107229616B (zh) | 语言识别方法、装置及系统 | |
US9632804B2 (en) | Method, apparatus, and communication system for implementing internet application | |
US9565244B2 (en) | Methods and apparatus for operating browser engine | |
CN110187886A (zh) | 一种文档网站生成方法及终端 | |
CN112631604B (zh) | 一种前端框架实现方法及装置 | |
CN111949328B (zh) | 一种启动加速方法、装置、计算机设备及存储介质 | |
CN105867886B (zh) | 一种写表格的方法及装置 | |
CN106775826B (zh) | 一种使用注解方式加载代码文件的方法及系统 | |
CN110362317B (zh) | 一种代码转换方法、装置和存储介质 | |
CN109582932A (zh) | 基于教育系统的微信小程序富文本转换方法及电子设备 | |
CN111539200B (zh) | 一种生成富文本的方法、装置、介质和电子设备 | |
CN110110299A (zh) | 文本变换方法、装置以及服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180515 |
|
WD01 | Invention patent application deemed withdrawn after publication |