CN115291868A - 一种生成动态页面数据的方法、装置及存储介质 - Google Patents

一种生成动态页面数据的方法、装置及存储介质 Download PDF

Info

Publication number
CN115291868A
CN115291868A CN202210922122.0A CN202210922122A CN115291868A CN 115291868 A CN115291868 A CN 115291868A CN 202210922122 A CN202210922122 A CN 202210922122A CN 115291868 A CN115291868 A CN 115291868A
Authority
CN
China
Prior art keywords
data
page
interface
element information
sample data
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
Application number
CN202210922122.0A
Other languages
English (en)
Inventor
陈先辉
李继湛
叶艺源
肖诚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Foshan Sanshui Newpearl Building Ceramic Industry Co Ltd
Guangdong Summit Ceramics Co Ltd
Hubei Newpearl Green Building Material Technology Co Ltd
Jiangxi Xinmingzhu Building Materials Co Ltd
Newpearl Group Co Ltd
Original Assignee
Foshan Sanshui Newpearl Building Ceramic Industry Co Ltd
Guangdong Summit Ceramics Co Ltd
Hubei Newpearl Green Building Material Technology Co Ltd
Jiangxi Xinmingzhu Building Materials Co Ltd
Newpearl Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Foshan Sanshui Newpearl Building Ceramic Industry Co Ltd, Guangdong Summit Ceramics Co Ltd, Hubei Newpearl Green Building Material Technology Co Ltd, Jiangxi Xinmingzhu Building Materials Co Ltd, Newpearl Group Co Ltd filed Critical Foshan Sanshui Newpearl Building Ceramic Industry Co Ltd
Priority to CN202210922122.0A priority Critical patent/CN115291868A/zh
Publication of CN115291868A publication Critical patent/CN115291868A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种生成动态页面数据的方法、装置及存储介质,方法包括:根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板;根据第一xml模板,获取展示页面的第一元素信息和第一样例数据,获取展示页面的第一配置信息,将第一元素信息、第一样例数据和第一配置信息保存到数据库中;当接收到前端调用数据查询接口发送的页面编码时,根据页面编码在数据库中查询并获取所需的页面的第二元素信息、第二样例数据和第二配置信息;生成一个接口响应格式数据,将接口响应格式数据通过统一接口发送到前端。统一了页面样例数据的格式,使用统一的页面数据接口,实现不同页面的统一开发,提高开发效率。

Description

一种生成动态页面数据的方法、装置及存储介质
技术领域
本发明涉及计算机信息系统技术领域,尤其涉及一种生成动态页面数据的方法、装置及存储介质。
背景技术
在企业的移动端和PC端网站中,网站的运营人员需要根据运营情况生成不同的展示页面,每个页面的页面结构和数据获取方式都不一样,例如:首页、专题页、产品介绍页等。
现有的生成页面方法是通过前端编写代码调用后端的接口获取数据后,通过前端框架调用浏览器底层方法去渲染页面。在每天生成的页面较多的情况下,现有的方法每次开发后端接口的开发人员都需要根据不同的页面去定制开发不同的接口并且不同的接口需要在管理后台配置或生成不同格式的数据,开发人员的工作量巨大,代码复用率低,开发成本高,并且会增加系统开发上的复杂度,降低可维护性。
发明内容
本发明提供了一种生成动态页面数据的方法、装置及存储介质,实现不同页面的统一开发,提高开发效率。
为了解决上述技术问题,本发明实施例提供了一种生成动态页面数据的方法,包括当接收到第一用户界面稿时,根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板;所述定义文件是根据常规展示页面的基础元素而生成的;
根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,获取所述展示页面的第一配置信息,将所述第一元素信息、所述第一样例数据和所述第一配置信息保存到数据库中;其中,所述第一配置信息包括页面名称、页面编码、创建时间和有效性;
当接收到前端调用数据查询接口发送的页面编码时,根据所述页面编码在所述数据库中查询并获取所需的页面的第二元素信息、第二样例数据和第二配置信息;根据所述第二配置信息、第二样例数据和第二元素信息,生成一个接口响应格式数据,将所述接口响应格式数据通过统一接口发送到前端,以使所述前端获取并开发渲染所述接口响应格式数据。
作为优选方案,依据页面基础的文字和图片等基础组成元素,生成一套xml数据格式的定义文件,在定义文件的基础上,可以根据任何一个展示页面的展示数据要求生成展示页面所需要的样例数据,相比于现有技术的不同页面需要开发不同格式的样例数据的技术方案,本发明不需要重复开发代码去开发样例数据,减少了后端开发人员在开发新展示页面的代码编写量和后台配置的工作量,提高展示页面的开发效率。
本发明统一了根据xml模板获取展示页面数据接口的参数和返回格式,根据页面的配置信息和元素信息生成一个接口响应格式数据,不同页面的数据生成不同的接口响应格式数据,将不同的接口响应格式数据通过同一个接口发送到前端,使用了同一个接口就能获取不同页面的数据,前端的开发人员再根据此接口渲染不同样式的页面。
使用统一接口后,后端开发人员在后续线上运维阶段只需要维护此统一接口,更新功能和修改问题时也能做的一次修改就能适配所有页面,极大保障了此接口上线后功能稳定运行,在有新展示页面开发时不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
作为优选方案,所述根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板,具体为:
根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,抽象划分出所述展示页面对应的第一页面抽象模型,根据所述第一页面抽象模型映射出第一xml数据结构;将第一xml数据结构作为所述展示页面的第一xml模板;其中,所述第一页面抽象模型包括若干个元素模板,每个所述元素模板包括若干个名称属性相同的元素。
作为优选方案,本发明能够通过对用户界面稿的元素的抽象映射,获得出一个xml模板,xml模板再生成页面的样例数据,不同的用户界面稿只需要生成不同的xml模板,不需要重复开发代码去开发样例数据,极大减少了后端开发人员在开发阶段开发新展示页面的代码编写量和后台配置的工作量。
作为优选方案,所述定义文件是根据常规展示页面的基础元素而生成的,具体为:
根据常规展示页面的基础元素,生成定义文件;其中,所述基础元素包括页面、模板、图片链接、文本链接、大文本、商品、文章、优惠券;每种所述基础元素包括对应的元素相关属性,所述元素相关属性包括名称属性、关键字属性、数量属性、类型属性。
作为优选方案,本发明针对各种类型的展示页面,依据页面基础的文字和图片等基础组成元素,可以组成任意一种通用xml树状结构数据格式的xml模板,不同的页面会对应一种xml模板,这种生成xml模板的方法可以适配任何一个展示页面的展示数据要求,减少了后端开发人员在开发阶段开发新展示页面的代码编写量和后台配置的工作量,提高展示页面的开发效率。
作为优选方案,所述根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,具体为:
解析第一xml模板的每个节点,获取每个节点的元素信息作为展示页面的第一元素信息;其中,每个所述节点包含一个元素;
根据所有的节点的数量和类型,使用随机算法获取第一样例数据。
作为优选方案,本发明在定义文件的基础上生成了xml模板,可以根据任何一个展示页面的展示数据要求生成展示页面所需要的样例数据,相比于现有技术的不同页面需要开发不同格式的样例数据的技术方案,本发明不需要重复开发代码去开发样例数据,减少了后端开发人员在开发新展示页面的代码编写量和后台配置的工作量,提高展示页面的开发效率。
作为优选方案,所述根据所述第二配置信息、第二样例数据和所述第二元素信息,生成一个接口响应格式数据,具体为:
将第二配置信息转化为json结构的配置数据;将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据;将所述配置数据、所述树状结构数据和所述元素信息结构数据组成一个接口响应格式数据。
作为优选方案,通过将所需页面的样例数据和元素信息转换为json结构数据,并将所有json结构数据组成一个接口响应格式数据,使得不同页面生成的不同的接口响应格式数据都能通过同一的接口传输,可以适配任何展示页面的元素信息,使用了同一个接口就能获取不同页面的数据,前端的开发人员再根据此接口渲染不同样式的页面,在有新展示页面开发时不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
作为优选方案,所述将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据,具体为:
将第二样例数据的节点中的关键字作为树状结构数据的每个节点的key值;设置树状结构数据每个节点的名称、子节点和同级别重复的模板;其中,所述关键字为对应节点的完整路径;
将第二样例数据的第一节点的关键字作为第一元素信息数据的key值;将所述第二样例数据的第一节点的基础信息构成第一元素信息数据的value的第一属性;将所述第二样例数据的第一节点的具体信息构成第一元素信息数据的value的第二属性;其中,所述基础信息包括位置名称、显示数量、父节点,所述具体信息包括名称、链接、图片;
根据所述第二样例数据的每个节点,生成若干个对应的元素信息数据。
作为优选方案,本发明将展示页面的样例数据和元素信息转换成json结构的数据,再组成一个接口响应格式数据,通过同一个接口发送到前端,以使前端获取生成页面所需的数据,不同页面生成的不同的接口响应格式数据都能通过同一的接口传输,前端可以通过同一个接口获取所有不同页面的数据,不同的页面开发不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
相应地,本发明还提供一种生成动态页面数据的装置,包括:页面开发模块、数据库模块和接口模块;
其中,页面开发模块用于当接收到第一用户界面稿时,根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板;所述定义文件是根据常规展示页面的基础元素而生成的;根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,获取所述展示页面的第一配置信息;
数据库模块用于将所述第一元素信息、所述第一样例数据和所述第一配置信息保存到数据库中;其中,所述第一配置信息包括页面名称、页面编码、创建时间和有效性;
接口模块用于当接收到前端调用数据查询接口发送的页面编码时,根据所述页面编码在所述数据库中查询并获取所需的页面的第二元素信息、第二样例数据和第二配置信息;根据所述第二配置信息、第二样例数据和第二元素信息,生成一个接口响应格式数据,将所述接口响应格式数据通过统一接口发送到前端,以使所述前端获取并开发渲染所述接口响应格式数据。
作为优选方案,在页面开发模块中,依据页面基础的文字和图片等基础组成元素,生成一套xml数据格式的定义文件,在定义文件的基础上,可以根据任何一个展示页面的展示数据要求生成展示页面所需要的样例数据,相比于现有技术的不同页面需要开发不同格式的样例数据的技术方案,本发明不需要重复开发代码去开发样例数据,减少了后端开发人员在开发新展示页面的代码编写量和后台配置的工作量,提高展示页面的开发效率。
在接口模块中,统一了根据xml模板获取展示页面数据接口的参数和返回格式,根据页面的配置信息和元素信息生成一个接口响应格式数据,不同页面的数据生成不同的接口响应格式数据,将不同的接口响应格式数据通过同一个接口发送到前端,使用了同一个接口就能获取不同页面的数据,前端的开发人员再根据此接口渲染不同样式的页面。
使用统一接口后,后端开发人员在后续线上运维阶段只需要维护此统一接口,更新功能和修改问题时也能做的一次修改就能适配所有页面,极大保障了此接口上线后功能稳定运行,在有新展示页面开发时不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
作为优选方案,所述根据所述第二配置信息、第二样例数据和所述第二元素信息,生成一个接口响应格式数据,具体为:
将第二配置信息转化为json结构的配置数据;将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据;将所述配置数据、所述树状结构数据和所述元素信息结构数据组成一个接口响应格式数据。
作为优选方案,通过将所需页面的样例数据和元素信息转换为json结构数据,并将所有json结构数据组成一个接口响应格式数据,使得不同页面生成的不同的接口响应格式数据都能通过同一的接口传输,可以适配任何展示页面的元素信息,使用了同一个接口就能获取不同页面的数据,前端的开发人员再根据此接口渲染不同样式的页面,在有新展示页面开发时不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
作为优选方案,所述将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据,具体为:
将第二样例数据的节点中的关键字作为树状结构数据的每个节点的key值;设置树状结构数据每个节点的名称、子节点和同级别重复的模板;其中,所述关键字为对应节点的完整路径;
将第二样例数据的第一节点的关键字作为第一元素信息数据的key值;将所述第二样例数据的第一节点的基础信息构成第一元素信息数据的value的第一属性;将所述第二样例数据的第一节点的具体信息构成第一元素信息数据的value的第二属性;其中,所述基础信息包括位置名称、显示数量、父节点,所述具体信息包括名称、链接、图片;
根据所述第二样例数据的每个节点,生成若干个对应的元素信息数据。
作为优选方案,本发明将展示页面的样例数据和元素信息转换成json结构的数据,再组成一个接口响应格式数据,通过同一个接口发送到前端,以使前端获取生成页面所需的数据,不同页面生成的不同的接口响应格式数据都能通过同一的接口传输,前端可以通过同一个接口获取所有不同页面的数据,不同的页面开发不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
相应地,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如发明内容所述的一种生成动态页面数据的方法。
附图说明
图1是本发明提供的生成动态页面数据的方法的一种实施例的流程示意图;
图2是本发明提供的生成动态页面数据的方法中生成xml数据结构的一种实施例的流程示意图;
图3是本发明提供的生成动态页面数据的装置的一种实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参照图1,为本发明实施例提供的一种生成动态页面数据的方法,包括步骤S101-S103:
步骤S101:当接收到第一用户界面稿时,根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板。
在本实施例中,所述定义文件是根据常规展示页面的基础元素而生成的。
在本实施例中,根据常规展示页面的基础元素,生成定义文件;其中,所述基础元素包括页面、模板、图片链接、文本链接、大文本、商品、文章、优惠券;每种所述基础元素包括对应的元素相关属性,所述元素相关属性包括名称属性、关键字属性、数量属性、类型属性。
在本实施例中,根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,抽象划分出所述展示页面对应的第一页面抽象模型,根据所述第一页面抽象模型映射出第一xml数据结构;将第一xml数据结构作为所述展示页面的第一xml模板;其中,所述第一页面抽象模型包括若干个元素模板,每个所述元素模板包括若干个名称属性相同的元素。
在本实施例中,参考图2,第一用户界面稿的元素包括文字链接A-01、文字链接A-02、图片B-01、图片B-02、商品C-01、商品C-02和大文本D-01。根据所述第一用户界面稿的元素,在定义文件中,获取文字链接、图片、商品和大文本基础元素,组成一个树状xml数据结构。
根据第一用户界面稿的元素和树状xml数据结构抽象划分出所述展示页面对应的第一页面抽象模型,根据所述第一页面抽象模型映射出第一xml数据结构;将第一xml数据结构作为所述展示页面的第一xml模板;
其中,所述第一页面抽象模型包括四个元素模板:模板A、模板B、模板C和模板A,模板A包括文字链接A-01和文字链接A-02;模板B包括:图片B-01、图片B-02;模板C包括:商品C-01、商品C-02;模板D包括:大文本D-01。
步骤S102:根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,获取所述展示页面的第一配置信息,将所述第一元素信息、所述第一样例数据和所述第一配置信息保存到数据库中。
在本实施例中,所述第一配置信息包括页面名称、页面编码、创建时间和有效性。
在本实施例中,所述根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,具体为:
解析第一xml模板的每个节点,获取每个节点的元素信息作为展示页面的第一元素信息;其中,每个所述节点包含一个元素;
根据所有的节点的数量和类型,使用随机算法获取第一样例数据。
步骤S103:当接收到前端调用数据查询接口发送的页面编码时,根据所述页面编码在所述数据库中查询并获取所需的页面的第二元素信息、第二样例数据和第二配置信息;根据所述第二配置信息、第二样例数据和第二元素信息,生成一个接口响应格式数据,将所述接口响应格式数据通过统一接口发送到前端,以使所述前端获取并开发渲染所述接口响应格式数据。
在本实施例中,前端调用数据查询接口发送页面编码到后端,页面编码为/api/o2o/getPage.do?pageCode=BrandIndex
在本实施例中,所述根据所述第二配置信息、第二样例数据和所述第二元素信息,生成一个接口响应格式数据,具体为:
将第二配置信息转化为json结构的配置数据,命名为pageInfo;
将第二样例数据解析转换成json结构的树状结构数据,命名为treeMap:将第二样例数据的节点中的关键字keyword作为树状结构数据的每个节点的key值;设置树状结构数据每个节点的名称name、子节点children和同级别重复的模板subList;其中,所述关键字为对应节点的完整路径;
treeMap的json格式结构如下:
Figure BDA0003778152630000091
Figure BDA0003778152630000101
Figure BDA0003778152630000111
根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据,命名为spaceMap:将第二样例数据的第一节点的关键字keyword作为第一元素信息数据的key值;将所述第二样例数据的第一节点的基础信息构成第一元素信息数据的value的第一属性;将所述第二样例数据的第一节点的具体信息构成第一元素信息数据的value的第二属性;
其中,所述基础信息包括位置名称、显示数量、父节点,所述具体信息包括名称、链接、图片、商品的价格和原价、文章的标题和副标题、优惠券的满减信息;根据所述第二样例数据的每个节点,生成若干个对应的元素信息数据。
spaceMap的具体结构如下:
Figure BDA0003778152630000112
Figure BDA0003778152630000121
将所述配置数据pageInfo、所述树状结构数据treeMap和所述元素信息结构数据spaceMap组成一个接口响应格式数据:
统一的接口响应格式数据为:
Figure BDA0003778152630000131
实施本实施例,具有以下有益效果:
本发明的生成动态页面数据的方法依据页面基础的文字和图片等基础组成元素,生成一套xml数据格式的定义文件,在定义文件的基础上,可以根据任何一个展示页面的展示数据要求生成展示页面所需要的样例数据,相比于现有技术的不同页面需要开发不同格式的样例数据的技术方案,本发明不需要重复开发代码去开发样例数据,减少了后端开发人员在开发新展示页面的代码编写量和后台配置的工作量,提高展示页面的开发效率。
本发明统一了根据xml模板获取展示页面数据接口的参数和返回格式,根据页面的配置信息和元素信息生成一个接口响应格式数据,不同页面的数据生成不同的接口响应格式数据,将不同的接口响应格式数据通过同一个接口发送到前端,使用了同一个接口就能获取不同页面的数据,前端的开发人员再根据此接口渲染不同样式的页面。
使用统一接口后,后端开发人员在后续线上运维阶段只需要维护此统一接口,更新功能和修改问题时也能做的一次修改就能适配所有页面,极大保障了此接口上线后功能稳定运行,在有新展示页面开发时不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
实施例二
请参照图3,为本发明实施例提供的一种生成动态页面数据的装置,包括:页面开发模块201、数据库模块202和接口模块203;
其中,页面开发模块201用于当接收到第一用户界面稿时,根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板;所述定义文件是根据常规展示页面的基础元素而生成的;根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,获取所述展示页面的第一配置信息;
数据库模块202用于将所述第一元素信息、所述第一样例数据和所述第一配置信息保存到数据库中;其中,所述第一配置信息包括页面名称、页面编码、创建时间和有效性;
接口模块203用于当接收到前端调用数据查询接口发送的页面编码时,根据所述页面编码在所述数据库中查询并获取所需的页面的第二元素信息、第二样例数据和第二配置信息;根据所述第二配置信息、第二样例数据和第二元素信息,生成一个接口响应格式数据,将所述接口响应格式数据通过统一接口发送到前端,以使所述前端获取并开发渲染所述接口响应格式数据。
在本实施例中,所述根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板,具体为:
根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,抽象划分出所述展示页面对应的第一页面抽象模型,根据所述第一页面抽象模型映射出第一xml数据结构;将第一xml数据结构作为所述展示页面的第一xml模板;其中,所述第一页面抽象模型包括若干个元素模板,每个所述元素模板包括若干个名称属性相同的元素。
在本实施例中,所述定义文件是根据常规展示页面的基础元素而生成的,具体为:
根据常规展示页面的基础元素,生成定义文件;其中,所述基础元素包括页面、模板、图片链接、文本链接、大文本、商品、文章、优惠券;每种所述基础元素包括对应的元素相关属性,所述元素相关属性包括名称属性、关键字属性、数量属性、类型属性。
在本实施例中,所述根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,具体为:
解析第一xml模板的每个节点,获取每个节点的元素信息作为展示页面的第一元素信息;其中,每个所述节点包含一个元素;
根据所有的节点的数量和类型,使用随机算法获取第一样例数据。
在本实施例中,所述根据所述第二配置信息、第二样例数据和所述第二元素信息,生成一个接口响应格式数据,具体为:
将第二配置信息转化为json结构的配置数据;将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据;将所述配置数据、所述树状结构数据和所述元素信息结构数据组成一个接口响应格式数据。
在本实施例中,所述将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据,具体为:
将第二样例数据的节点中的关键字作为树状结构数据的每个节点的key值;设置树状结构数据每个节点的名称、子节点和同级别重复的模板;其中,所述关键字为对应节点的完整路径;
将第二样例数据的第一节点的关键字作为第一元素信息数据的key值;将所述第二样例数据的第一节点的基础信息构成第一元素信息数据的value的第一属性;将所述第二样例数据的第一节点的具体信息构成第一元素信息数据的value的第二属性;其中,所述基础信息包括位置名称、显示数量、父节点,所述具体信息包括名称、链接、图片;
根据所述第二样例数据的每个节点,生成若干个对应的元素信息数据。
上述的生成动态页面数据的装置可实施上述方法实施例的生成动态页面数据的方法。上述方法实施例中的可选项也适用于本实施例,这里不再详述。本发明实施例的其余内容可参照上述方法实施例的内容,在本实施例中,不再进行赘述。
实施本实施例,具有以下有益效果:
本发明提供的的生成动态页面数据的装置,在页面开发模块中,依据页面基础的文字和图片等基础组成元素,生成一套xml数据格式的定义文件,在定义文件的基础上,可以根据任何一个展示页面的展示数据要求生成展示页面所需要的样例数据,相比于现有技术的不同页面需要开发不同格式的样例数据的技术方案,本发明不需要重复开发代码去开发样例数据,减少了后端开发人员在开发新展示页面的代码编写量和后台配置的工作量,提高展示页面的开发效率。
在接口模块中,统一了根据xml模板获取展示页面数据接口的参数和返回格式,根据页面的配置信息和元素信息生成一个接口响应格式数据,不同页面的数据生成不同的接口响应格式数据,将不同的接口响应格式数据通过同一个接口发送到前端,使用了同一个接口就能获取不同页面的数据,前端的开发人员再根据此接口渲染不同样式的页面。
使用统一接口后,后端开发人员在后续线上运维阶段只需要维护此统一接口,更新功能和修改问题时也能做的一次修改就能适配所有页面,极大保障了此接口上线后功能稳定运行,在有新展示页面开发时不需要重新开发后端代码,而前端开发人员也不需要重新熟悉新页面的接口格式,减少了前后端接口对接的工作量,提高展示页面的开发效率。
实施例三
相应地,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上任意一项实施例所述的生成动态页面数据的方法。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据移动终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种生成动态页面数据的方法,其特征在于,包括:
当接收到第一用户界面稿时,根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板;所述定义文件是根据常规展示页面的基础元素而生成的;
根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,获取所述展示页面的第一配置信息,将所述第一元素信息、所述第一样例数据和所述第一配置信息保存到数据库中;其中,所述第一配置信息包括页面名称、页面编码、创建时间和有效性;
当接收到前端调用数据查询接口发送的页面编码时,根据所述页面编码在所述数据库中查询并获取所需的页面的第二元素信息、第二样例数据和第二配置信息;根据所述第二配置信息、第二样例数据和第二元素信息,生成一个接口响应格式数据,将所述接口响应格式数据通过统一接口发送到前端,以使所述前端获取并开发渲染所述接口响应格式数据。
2.如权利要求1所述的生成动态页面数据的方法,其特征在于,所述根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板,具体为:
根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,抽象划分出所述展示页面对应的第一页面抽象模型,根据所述第一页面抽象模型映射出第一xml数据结构;将第一xml数据结构作为所述展示页面的第一xml模板;其中,所述第一页面抽象模型包括若干个元素模板,每个所述元素模板包括若干个名称属性相同的元素。
3.如权利要求2所述的生成动态页面数据的方法,其特征在于,所述定义文件是根据常规展示页面的基础元素而生成的,具体为:
根据常规展示页面的基础元素,生成定义文件;其中,所述基础元素包括页面、模板、图片链接、文本链接、大文本、商品、文章、优惠券;每种所述基础元素包括对应的元素相关属性,所述元素相关属性包括名称属性、关键字属性、数量属性、类型属性。
4.如权利要求1所述的生成动态页面数据的方法,其特征在于,所述根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,具体为:
解析第一xml模板的每个节点,获取每个节点的元素信息作为展示页面的第一元素信息;其中,每个所述节点包含一个元素;
根据所有的节点的数量和类型,使用随机算法获取第一样例数据。
5.如权利要求1所述的生成动态页面数据的方法,其特征在于,所述根据所述第二配置信息、第二样例数据和所述第二元素信息,生成一个接口响应格式数据,具体为:
将第二配置信息转化为json结构的配置数据;将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将第二元素信息转换为json结构的元素信息数据;将所述配置数据、所述树状结构数据和所述元素信息结构数据组成一个接口响应格式数据。
6.如权利要求5所述的生成动态页面数据的方法,其特征在于,所述将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据,具体为:
将第二样例数据的节点中的关键字作为树状结构数据的每个节点的key值;设置树状结构数据每个节点的名称、子节点和同级别重复的模板;其中,所述关键字为对应节点的完整路径;
将第二样例数据的第一节点的关键字作为第一元素信息数据的key值;将所述第二样例数据的第一节点的基础信息构成第一元素信息数据的value的第一属性;将所述第二样例数据的第一节点的具体信息构成第一元素信息数据的value的第二属性;其中,所述基础信息包括位置名称、显示数量、父节点,所述具体信息包括名称、链接、图片;
根据所述第二样例数据的每个节点,生成若干个对应的元素信息数据。
7.一种生成动态页面数据的装置,其特征在于,包括:页面开发模块、数据库模块和接口模块;
其中,页面开发模块用于当接收到第一用户界面稿时,根据所述第一用户界面稿的若干个第一元素和定义文件的对应的第二元素,生成第一xml模板;所述定义文件是根据常规展示页面的基础元素而生成的;根据所述第一xml模板,获取所述展示页面的第一元素信息和第一样例数据,获取所述展示页面的第一配置信息;
数据库模块用于将所述第一元素信息、所述第一样例数据和所述第一配置信息保存到数据库中;其中,所述第一配置信息包括页面名称、页面编码、创建时间和有效性;
接口模块用于当接收到前端调用数据查询接口发送的页面编码时,根据所述页面编码在所述数据库中查询并获取所需的页面的第二元素信息、第二样例数据和第二配置信息;根据所述第二配置信息、第二样例数据和第二元素信息,生成一个接口响应格式数据,将所述接口响应格式数据通过统一接口发送到前端,以使所述前端获取并开发渲染所述接口响应格式数据。
8.如权利要求7所述的生成动态页面数据的装置,其特征在于,所述接口模块根据所述第二配置信息、第二样例数据和所述第二元素信息,生成一个接口响应格式数据,具体为:
将第二配置信息转化为json结构的配置数据;将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将第二元素信息转换为json结构的元素信息数据;将所述配置数据、所述树状结构数据和所述元素信息结构数据组成一个接口响应格式数据。
9.如权利要求8所述的生成动态页面数据的装置,其特征在于,所述接口模块将第二样例数据解析转换成json结构的树状结构数据;根据所述第二样例数据,将所述第二元素信息转换为json结构的元素信息数据,具体为:
将第二样例数据的节点中的关键字作为树状结构数据的每个节点的key值;设置树状结构数据每个节点的名称、子节点和同级别重复的模板;其中,所述关键字为对应节点的完整路径;
将第二样例数据的第一节点的关键字作为第一元素信息数据的key值;将所述第二样例数据的第一节点的基础信息构成第一元素信息数据的value的第一属性;将所述第二样例数据的第一节点的具体信息构成第一元素信息数据的value的第二属性;其中,所述基础信息包括位置名称、显示数量、父节点,所述具体信息包括名称、链接、图片;
根据所述第二样例数据的每个节点,生成若干个对应的元素信息数据。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如权利要求1至6中任意一项所述的一种生成动态页面数据的方法。
CN202210922122.0A 2022-08-02 2022-08-02 一种生成动态页面数据的方法、装置及存储介质 Pending CN115291868A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210922122.0A CN115291868A (zh) 2022-08-02 2022-08-02 一种生成动态页面数据的方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210922122.0A CN115291868A (zh) 2022-08-02 2022-08-02 一种生成动态页面数据的方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN115291868A true CN115291868A (zh) 2022-11-04

Family

ID=83825882

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210922122.0A Pending CN115291868A (zh) 2022-08-02 2022-08-02 一种生成动态页面数据的方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN115291868A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117910438A (zh) * 2024-03-13 2024-04-19 江苏中威科技软件系统有限公司 一种动态版式文件dlf的生成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117910438A (zh) * 2024-03-13 2024-04-19 江苏中威科技软件系统有限公司 一种动态版式文件dlf的生成装置

Similar Documents

Publication Publication Date Title
US11886806B2 (en) Templating process for a multi-page formatted document
US11537606B2 (en) Solution for implementing computing service based on structured query language statement
US9075833B2 (en) Generating XML schema from JSON data
AU2016302371B2 (en) Building and managing data-processing attributes for modeled data sources
US10419568B2 (en) Manipulation of browser DOM on server
CN103077185A (zh) 一种基于对象的自定义扩展信息的方法
CN111782216A (zh) 页面生成方法、服务器和存储介质
CN108717437B (zh) 搜索结果展示方法、装置及存储介质
JP2005521159A (ja) データ記述言語に対するスキーマ情報の動的生成
CN108563431B (zh) 软件开发方法、装置、计算机可读存储介质以及电子设备
US20220284371A1 (en) Method, device and medium for a business function page
CN110941655A (zh) 一种数据格式转换方法及装置
CN111753140A (zh) Xml文件解析方法及相关设备
CN112947900B (zh) web应用开发方法、装置、服务器及开发终端
CN110569243B (zh) 一种数据查询方法、数据查询插件和数据查询服务器
CN115291868A (zh) 一种生成动态页面数据的方法、装置及存储介质
CN113590115B (zh) 一种业务系统代码自动生成方法及装置
CN117370242A (zh) 通过解析接口文档生成多语言sdk客户端的适配器和方法
CN115759029A (zh) 文档模板处理方法、装置、电子设备及存储介质
CN109240660B (zh) 一种广告数据的接入方法、存储介质、电子设备及系统
CN111475156B (zh) 页面代码生成方法和装置、电子设备和存储介质
CN110928540A (zh) 一种页面生成方法及装置
US20080294645A1 (en) System, method and computer program product for EDI-to-EDI translations
WO2022181122A1 (ja) 運用支援装置、システム及び方法並びにコンピュータ可読媒体
CN117331466A (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