CN110928540A - 一种页面生成方法及装置 - Google Patents
一种页面生成方法及装置 Download PDFInfo
- Publication number
- CN110928540A CN110928540A CN201811094703.XA CN201811094703A CN110928540A CN 110928540 A CN110928540 A CN 110928540A CN 201811094703 A CN201811094703 A CN 201811094703A CN 110928540 A CN110928540 A CN 110928540A
- Authority
- CN
- China
- Prior art keywords
- node
- page
- nodes
- generating
- target page
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004458 analytical method Methods 0.000 claims abstract description 32
- 238000004590 computer program Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 230000002452 interceptive effect Effects 0.000 description 9
- 230000003993 interaction Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
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/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例公开了一种页面生成方法及装置,通过获取与目标页面对应的可扩展标记语言结构定义xsd文件,对xsd文件进行解析,根据解析结果生成与目标页面对应的页面生成代码,根据页面生成代码生成目标页面。由于xsd文件可以是开发人员预先根据页面中的预设的元素进行编写的,编写过程中可以通过调用预设的元素对应的xsd文件,而不必编辑大量代码,同时,通过对xsd文件的解析结果可以生成相应的页面生成代码,以便根据页面生成代码生成目标页面,即自动形成代码,而不必人工编写代码,提高了页面生成的效率。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种页面生成方法及装置。
背景技术
通常来说,页面可以用来显示文字和图像等。然而,随着信息技术的发展,人们不再满足于仅仅从页面中获取文字和图像的信息,页面的功能也更加强大且多样,页面中可以显示用于交互的交互控件,人们可以通过这些交互控件来实现与终端的交互,交互控件例如编辑控件、选择控件和输入控件等。举例来说,在信息录入页面中,可以形成由选择框作为选择控件,以便用户对预设的选项进行选择,或形成由输入框作为输入控件,以便用户进行自定义内容的输入,或形成有编辑控件,用于增加或删除元素,例如元素可以是文字、图像、交互控件等。
现有技术中,对于页面的生成通常通过人工编写相应的代码来实现,具体来说,可以根据实际的场景,通过人工编写代码创建新的页面,并通过人工编写相应的代码在页面中增加文字、图像和交互控件等元素,以完成对页面的开发。在页面中包括多个交互控件,且多个交互控件之间相关联时,例如点击第一控件,再进行第二控件的显示,还需要通过编写的代码表示交互控件之间的关联。
然而这种通过人工编写代码来生成页面的方法中,需要花费较长的时间,若页面的功能较多,或者可变性很大时,需要花费的时间则更长,因此这种页面生成方式效率较低。
发明内容
为了解决现有技术人工编写代码来生成页面的效率较低的问题,本申请实施例提供了一种页面生成方法及装置。
本申请实施例提供了一种页面生成方法,所述方法包括:
获取与目标页面对应的可扩展标记语言结构定义xsd文件;
对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码;
根据所述页面生成代码生成所述目标页面。
可选的,所述xsd文件包括节点,所述节点对应于所述目标页面中的元素;所述对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码,包括:
对所述xsd文件的节点进行解析,得到所述节点对应的元素及所述元素的元素信息;
根据所述元素信息,生成对应于所述节点的节点代码;所述节点代码用于生成所述节点对应的元素;
根据对应于所述节点的节点代码,生成与所述目标页面对应的页面生成代码。
可选的,所述节点包括用于描述所述节点的节点信息,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素的元素信息,包括:
获取用于描述所述xsd文件的节点的节点信息,所述节点信息包括所述节点的名称、内容、属性以及所述节点之间的关联关系中的至少一项;
根据所述节点信息,得到所述节点对应的元素的元素信息,所述元素信息包括元素的名称、内容、属性、类别以及所述元素之间的关联关系中的至少一项。
可选的,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素,包括:
若所述节点包括全部指示器、顺序指示器和组合指示器中的至少一项,则确定所述元素为文字;
若所述节点包括选择指示器,则确定所述节点对应的元素为选择控件,所述选择控件用于对所述节点的子节点对应的子元素选择;
若所述节点包括最大频次指示器和/或最小频次指示器,则确定所述节点对应的元素为编辑控件,所述编辑控件用于编辑所述节点的子节点对应的子元素出现的频次;
若所述节点不包括全部指示器、顺序指示器、组合指示器和选择指示器的任意一项,则在所述节点存在内容时,确定所述节点对应的元素为输入控件,所述输入控件分别用于输入所述节点对应的元素的内容。
可选的,所述方法还包括:
接收对所述目标页面中的选择控件的选择指令,显示所述选择指令对应的所述节点的子节点对应的子元素;和/或,
接收对所述目标页面中的编辑控件的编辑指令,根据所述编辑指令对所述节点的子节点对应的子元素出现的频次进行调整;和/或,
接收对所述目标页面中的输入控件的输入指令,显示所述输入指令对应的所述节点的元素的内容。
可选的,所述目标页面为配置页面或Web页面;
所述目标页面为配置页面时,所述根据所述页面生成代码生成所述目标页面,包括:
根据所述页面生成代码,生成配置页面;和/或,
所述目标页面为Web页面时,所述根据所述页面生成代码生成所述目标页面,包括:
获取Web页面的样式设置规则;
根据所述页面生成代码和所述样式设置规则,生成所述Web页面。
本申请实施例提供了一种页面生成装置,所述装置包括:
xsd文件获取单元,用于获取与目标页面对应的可扩展标记语言结构定义xsd文件;
解析单元,用于对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码;
目标页面生成单元,用于根据所述页面生成代码生成所述目标页面。
可选的,所述xsd文件包括节点,所述节点对应于所述目标页面中的元素;所述解析单元,包括:
解析子单元,用于对所述xsd文件的节点进行解析,得到所述节点对应的元素及所述元素的元素信息;
节点代码生成单元,用于根据所述元素信息,生成对应于所述节点的节点代码;所述节点代码用于生成所述节点对应的元素;
页面生成代码生成单元,用于根据对应于所述节点的节点代码,生成与所述目标页面对应的页面生成代码。
可选的,所述节点包括用于描述所述节点的节点信息,所述解析子单元,包括:
节点信息获取单元,用于获取用于描述所述xsd文件的节点的节点信息,所述节点信息包括所述节点的名称、内容、属性以及所述节点之间的关联关系中的至少一项;
元素信息获取单元,用于根据所述节点信息,得到所述节点对应的元素的元素信息,所述元素信息包括元素的名称、内容、属性、类别以及所述元素之间的关联关系中的至少一项。
可选的,所述解析子单元,包括:
第一元素确定单元,用于若所述节点包括全部指示器、顺序指示器和组合指示器中的至少一项,则确定所述元素为文字;
第二元素确定单元,用于若所述节点包括选择指示器,则确定所述节点对应的元素为选择控件,所述选择控件用于对所述节点的子节点对应的子元素选择;
第三元素确定单元,用于若所述节点包括最大频次指示器和/或最小频次指示器,则确定所述节点对应的元素为编辑控件,所述编辑控件用于编辑所述节点的子节点对应的子元素出现的频次;
第四元素确定单元,用于若所述节点不包括全部指示器、顺序指示器、组合指示器和选择指示器的任意一项,则在所述节点存在内容时,确定所述节点对应的元素为输入控件,所述输入控件分别用于输入所述节点对应的元素的内容。
可选的,所述装置还包括:
第一显示单元,用于接收对所述目标页面中的选择控件的选择指令,显示所述选择指令对应的所述节点的子节点对应的子元素;和/或,
第二显示单元,用于接收对所述目标页面中的编辑控件的编辑指令,根据所述编辑指令对所述节点的子节点对应的子元素出现的频次进行调整;和/或,
第三显示单元,用于接收对所述目标页面中的输入控件的输入指令,显示所述输入指令对应的所述节点的元素的内容。
可选的,所述目标页面为配置页面或Web页面;
所述目标页面为配置页面时,所述目标页面生成单元,具体用于:
根据所述页面生成代码,生成配置页面;和/或,
所述目标页面为Web页面时,所述目标页面生成单元,具体用于:
获取Web页面的样式设置规则;
根据所述页面生成代码和所述样式设置规则,生成所述Web页面。
本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请实施例提供的页面生成方法。
本申请实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行本申请实施例提供的页面生成方法。
本申请实施例提供的一种页面生成方法及装置,通过获取与目标页面对应的可扩展标记语言结构定义xsd文件,对xsd文件进行解析,根据解析结果生成与目标页面对应的页面生成代码,根据页面生成代码生成目标页面。由于xsd文件可以是开发人员预先根据页面中的预设的元素进行编写的,编写过程中可以通过调用预设的元素对应的xsd文件,而不必编辑大量代码,同时,通过对xsd文件的解析结果可以生成相应的页面生成代码,以便根据页面生成代码生成目标页面,即自动形成代码,而不必人工编写代码,提高了页面生成的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种页面生成方法的流程图;
图2为本申请实施例提供的一种信息录入页面的示意图;
图3为本申请实施例提供的一种页面生成装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
随着信息技术的发展,页面的功能也逐渐强大和多样,例如可以包括文字、图像、交互控件等,交互控件例如选择控件、编辑控件和输入控件,其中选择控件可以用于对选项进行选择,例如可以是选择框,编辑控件可以用于对元素进行增加和删除,例如可以是添加按钮或删除按钮,输入控件可以用于自定义内容的输入,例如可以是输入框。
现有技术中,页面的生成方式通常通过编写相应的代码来实现,例如可以通过编写代码来创建新页面,通过代码来增加页面中的文字、图像和交互控件等元素,以完成对页面的开发。在页面中包括多个交互控件,且多个交互控件之间相关关联时,还需要通过代码表示交互控件之间的关联。然而这种通过人工编写代码来生成页面的方法中,需要花费较长的时间,若页面的功能较多,或者可变性很大时,需要花费的时间则更长,因此这种页面生成方式效率较低。
为了解决上述技术问题,本申请实施例提供的一种页面生成方法及装置,通过获取与目标页面对应的可扩展标记语言结构定义xsd文件,对xsd文件进行解析,根据解析结果生成与目标页面对应的页面生成代码,根据页面生成代码生成目标页面。由于xsd文件可以是开发人员预先根据页面中的预设的元素进行编写的,编写过程中可以通过调用预设的元素对应的xsd文件,而不必编辑大量代码,同时,通过对xsd文件的解析结果可以生成相应的页面生成代码,以便根据页面生成代码生成目标页面,即自动形成代码,而不必人工编写代码,提高了页面生成的效率。
参见图1,该图为本申请实施例一提供的一种页面生成方法的流程图,该方法包括以下步骤。
S101,获取与目标页面对应的可扩展标记语言结构定义xsd文件。
可扩展标记语言结构定义(XML Schemas Definition,XSD或xsd)是基于可扩展标记语言(Extensible Markup Language,XML)的语言,可以规定XML文档的结构和内容,通常用于验证XML文档,以检查该XML文档是否符合要求。具体的,xsd文件可以定义XML文档中出现的元素、元素的属性、元素的子元素、子元素的数量、子元素的顺序、元素的数据类型、元素的属性的数据类型等。
在本申请实施例中,xsd文件可以与目标页面对应,用于生成目标页面。目标页面可以是待开发的页面,例如可以是用于登录的页面,也可以是用于信息录入的页面。目标页面中可以包括多种元素,例如文字、图像和交互控件等中的至少一种,交互控件可以是编辑控件、选择控件和输入控件等。举例来说,参考图2所示,为信息录入页面的示意图,其中包括文字元素“基本信息”100,在“基本信息”100下,可以包括子元素“姓名”101、“性别”102、“年龄”103和“职业”104等基本信息项,“姓名”101可以对应第一输入框105,“性别”102可以对应第一选择框106,其中第一选择框106中包括“性别”102的子元素“男”1061和“女”1062,“年龄”103可以对应第二输入框107,“职业”104可以对应第二选择框108,其中第二选择框108中可以包括“职业”104的子元素“学生”1081、“职工”1082和“其他”1083。
获取与目标页面对应的xsd文件,具体的,可以通过开发人员根据目标页面中的预设的元素进行编写,在编写过程中,可以调用一些元素对应的xsd文件的模板,例如可以相应的调用输入控件的模板,或者选择控件的模板等,在模板的基础上进行编写,以使xsd文件的形成过程简单化。
xsd文件可以包括节点,节点可以包括元素节点和属性节点,其中属性节点与元素节点关联,元素节点可以对应于目标页面中的元素,属性节点可以对应元素节点对应的元素的属性,xsd文件中的元素节点可以是树状结构,元素节点之间的连接关系可以体现元素节点之间的关联关系。举例来说,“基本信息”100可以对应基本信息节点,“姓名”101可以对应姓名节点,“性别”102可以对应性别节点,“年龄”103可以对应年龄节点,“职业”104可以对应职业节点,当然,元素节点的名称可以与对应的元素的名称相同,也可以不同,姓名节点、性别节点、年龄节点和职业节点均为基本信息节点的子节点。
xsd文件中的节点可以反映目标页面中的元素的元素信息,元素信息可以是元素的名称、元素的属性、元素的类型、元素的子元素及其子元素的数量等,例如性别节点可以反映该节点的元素为节点的名称:“性别”102,元素的类型为选择控件:选择框106。
本申请实施例中,可以在开发人员完成xsd文件的编写之后,获取该xsd文件,以便根据xsd文件进行页面的开发。具体的,可以通过开发人员上传编写完成的xsd文件来获取。
S102,对xsd文件进行解析,根据解析结果生成与目标页面对应的页面生成代码。
xsd文件是根据目标页面的预设的元素进行编写的,因此是与目标页面相关的,对xsd文件进行解析,得到解析结果,根据解析结果生成与目标页面对应的页面生成代码。对xsd文件进行解析,可以具体为:对xsd文件的节点进行解析,获取节点对应的元素的元素信息。
在xsd文件中,节点包括用于描述节点的节点信息,例如节点的名称、内容、属性以及节点之间的关联关系中的至少一项。对xsd文件的节点进行解析,得到节点对应的元素的元素信息,可以具体为,获取用于描述节点的节点信息,根据节点的节点信息,得到节点对应的元素的元素信息,其中,元素信息可以包括元素的名称、内容、属性、类别以及元素之间的关联关系中的至少一项。
具体实施时,可以遍历xsd文件中的节点,以便对各个节点进行解析。对节点的遍历顺序可以根据xsd文件中节点的位置确定,例如可以从xsd文件的根节点开始,到根节点的子节点,再到子节点的子节点。
对xsd文件的节点进行解析,获取节点对应的元素,可以具体为,根据节点的指示器确定节点对应的元素。其中,节点的指示器可以包括全部(all)指示器、顺序(sequence)指示器、选择(choice)指示器、频次指示器(occurrence)指示器和组合(group)指示器等,其中,频次指示器可以包括最大频次(maxOccurs)指示器和最小频次(minOccurs)指示器。
具体的,若节点包括all指示器,表示该节点的子节点对应的子元素可以按照任意顺序出现,且每个子元素只出现一次,因此,该节点对应的元素可以是文字,该元素可以用于供用户查看相应的文字,例如可以是节点的名称对应的文字。例如“基本信息”100对应的基本信息节点的指示器可以是all指示器,则表示基本信息节点的子节点对应的子元素,即“姓名”101、“性别”102、“年龄”103和“职业”104可以按照任意顺序出现。
具体的,若节点包括sequence指示器,表示该节点的子节点对应的子元素必须按照特定的顺序出现,因此,该节点对应的元素可以是文字,该元素可以用于供用户查看相应的文字。
具体的,若节点包括group指示器,表示该节点的子节点构成一个组合,因此,该节点对应的元素可以是文字,该元素可以用于供用户查看相应的文字,例如可以是组合的名称。
具体的,若节点包括choice指示器,表示可出现该节点的子节点对应的子元素的其中一个,该节点对应的元素可以是选择控件,用于对该节点的子节点对应的子元素进行选择,例如可以选择子元素中的其中一个,其中,该选择控件的内容可以是该节点的子节点对应的子元素,以便用户进行选择。例如“性别”102对应的性别节点的指示器可以为choice指示器,则性别节点对应的元素可以是第一选择框106,第一选择框106的内容包括第一选择框106的子元素“男”1061和“女”1062。
具体的,若节点包括maxOccurs指示器,表示对该节点的子节点对应的子元素可出现的最大次数进行了定义,若节点包括minOccurs指示器,表示对该节点的子节点对应的子元素可出现的最小次数进行了定义。因此,节点包括maxOccurs指示器和minOccurs指示器的至少一种时,可认为该节点的子节点对应的子元素的可出现次数的范围被限定,此时,该节点对应的元素可以是编辑控件,编辑控件可以用于编辑该节点的子节点对应的子元素出现的频次,例如可以增加子元素出现的频次,也可以减少子元素出现的频次。
具体的,若节点不包括all指示器、sequence指示器、group指示器和choice指示器中的任意一项,则该节点对应的元素的类型可以为供用户输入自定义内容的输入控件。需要说明的是,若该节点存在内容,则可以确定该节点对应的元素为输入控件,该输入控件用于输入该节点对应的元素的内容。可以理解的是,该节点可以是元素节点,则对应的输入控件用于输入该元素节点对应的元素的内容,该节点也可以是属性节点,则对应的输入输入控件用户输入该属性节点对应的元素节点对应的元素的属性值。
在确定元素后,还可以确定元素的内容等其他信息,以便根据元素的元素信息,生成对应于节点的节点代码。例如元素为文字时,可以确定文字的内容,例如文字的内容可以是节点的名称等,元素为选择控件时,可以确定选择控件的内容。
节点代码用于生成节点对应的元素,需要说明的是,节点代码的生成当时是与节点代码所使用的语言相关的,不同的语言可能有不同的生成方式,而节点代码所使用的语言可以根据目标页面的类型确定。例如目标页面为网页,则节点代码所使用的语言可以是超文本标记语言(HyperText Markup Language,html),节点代码可以是html表单中的内容。
在生成对应于各个节点的节点代码后,可以根据各个节点的节点代码,生成与目标页面对应的页面生成代码。具体的,可以将各个节点的节点代码按照预设规则进行组合,形成页面生成代码,其中预设规则可以根据节点代码对应的节点在xsd文件中的位置确定,页面生成代码可以用于生成目标页面。
S103,根据页面生成代码生成目标页面。
页面生成代码是根据xsd文件中的各个节点的节点代码生成的,而节点代码用于生成目标页面中的元素,因此,页面生成代码可以用于生成目标页面,其中,目标页面中包括元素。
在本申请实施例中,目标页面可以是配置页面,配置页面中包括Web页面的配置信息,根据Web页面的配置信息,可以生成Web页面,则根据页面生成代码生成目标页面,可以具体为,根据页面生成代码,生成配置页面。
在本申请实施例中,目标页面可以是Web页面,则根据页面生成代码生成目标页面,还可以具体为,获取Web页面的样式设置规则,根据页面生成代码和Web页面的样式设置规则,生成Web页面,其中样式设置规则可以用于规定Web页面的样式。这是因为,直接根据页面生成代码生成的页面,具有固定的样式,通过样式设置规则,可以对生成的固定样式的页面的样式进行调整,使其更为美观。样式设置规则可以通过层叠样式表(CascadingStyle Sheets,css)选择器来预先设定,实现对Web页面样式的调整,在根据其他语言生成页面的场景中,可以通过其他形式的样式设置规则,在此不做一一举例。
在本申请实施例中,在形成目标页面后,还可以接收用户对目标页面中的控件的操作指令,显示目标页面中的其他元素。具体的,对目标页面中的控件的操作指令,可以是对目标页面中的选择空间的选择指令,显示选择指令对应的节点的子节点对应的子元素,例如元素“性别”102对应的第一选择框106中的“女”1062进行选择操作,则可以显示元素“性别”102的子元素“女”;对目标页面中的控件的操作指令,可以是对目标页面中的编辑控件的编辑指令,根据编辑指令对节点的子节点对应的子元素出现的频次进行调整,例如元素“工作经历”的子元素可以出现1次,根据用户对编辑控件的增加操作,可以将元素“工作经历”的子元素可以出现的次数调整为2次;对目标页面中的控件的操作指令,可以是接收对目标页面中的输入控件的输入指令,显示输入指令对应的节点的元素的内容,例如在元素“姓名”101对应的第一输入框105中,输入“张三”,则可以在第一输入框105中显示“张三”。
在本申请实施例中,在对xsd文本中的节点进行解析时,还可以建立与xsd文件对应的xml文档,其中,xml文档中的元素与xsd文件中的节点对应。在生成目标页面后,还可以根据与xsd文件对应的xml文档生成与目标页面对应的xml文档,以便在向服务器发送请求时,提高xml文档的生成效率。
本申请实施例提供的一种页面生成方法,通过获取与目标页面对应的可扩展标记语言结构定义xsd文件,对xsd文件进行解析,根据解析结果生成与目标页面对应的页面生成代码,根据页面生成代码生成目标页面。由于xsd文件可以是开发人员预先根据页面中的预设的元素进行编写的,编写过程中可以通过调用预设的元素对应的xsd文件,而不必编辑大量代码,同时,通过对xsd文件的解析结果可以生成相应的页面生成代码,以便根据页面生成代码生成目标页面,即自动形成代码,而不必人工编写代码,提高了页面生成的效率。
基于以上实施例提供的一种页面生成方法,本申请实施例还提供了一种页面生成装置,下面结合附图来详细说明其工作原理。
参见图3,该图为本申请实施例提供的一种页面生成装置的结构框图,该装置包括:
xsd文件获取单元110,用于获取与目标页面对应的可扩展标记语言结构定义xsd文件;
解析单元120,用于对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码;
目标页面生成单元130,用于根据所述页面生成代码生成所述目标页面。
可选的,所述xsd文件包括节点,所述节点对应于所述目标页面中的元素;所述解析单元,包括:
解析子单元,用于对所述xsd文件的节点进行解析,得到所述节点对应的元素及所述元素的元素信息;
节点代码生成单元,用于根据所述元素信息,生成对应于所述节点的节点代码;所述节点代码用于生成所述节点对应的元素;
页面生成代码生成单元,用于根据对应于所述节点的节点代码,生成与所述目标页面对应的页面生成代码。
可选的,所述节点包括用于描述所述节点的节点信息,所述解析子单元,包括:
节点信息获取单元,用于获取用于描述所述xsd文件的节点的节点信息,所述节点信息包括所述节点的名称、内容、属性以及所述节点之间的关联关系中的至少一项;
元素信息获取单元,用于根据所述节点信息,得到所述节点对应的元素的元素信息,所述元素信息包括元素的名称、内容、属性、类别以及所述元素之间的关联关系中的至少一项。
可选的,所述解析子单元,包括:
第一元素确定单元,用于若所述节点包括全部指示器、顺序指示器和组合指示器中的至少一项,则确定所述元素为文字;
第二元素确定单元,用于若所述节点包括选择指示器,则确定所述节点对应的元素为选择控件,所述选择控件用于对所述节点的子节点对应的子元素选择;
第三元素确定单元,用于若所述节点包括最大频次指示器和/或最小频次指示器,则确定所述节点对应的元素为编辑控件,所述编辑控件用于编辑所述节点的子节点对应的子元素出现的频次;
第四元素确定单元,用于若所述节点不包括全部指示器、顺序指示器、组合指示器和选择指示器的任意一项,则在所述节点存在内容时,确定所述节点对应的元素为输入控件,所述输入控件分别用于输入所述节点对应的元素的内容。
可选的,所述装置还包括:
第一显示单元,用于接收对所述目标页面中的选择控件的选择指令,显示所述选择指令对应的所述节点的子节点对应的子元素;和/或,
第二显示单元,用于接收对所述目标页面中的编辑控件的编辑指令,根据所述编辑指令对所述节点的子节点对应的子元素出现的频次进行调整;和/或,
第三显示单元,用于接收对所述目标页面中的输入控件的输入指令,显示所述输入指令对应的所述节点的元素的内容。
可选的,所述目标页面为配置页面或Web页面;
所述目标页面为配置页面时,所述目标页面生成单元,具体用于:
根据所述页面生成代码,生成配置页面;和/或,
所述目标页面为Web页面时,所述目标页面生成单元,具体用于:
获取Web页面的样式设置规则;
根据所述页面生成代码和所述样式设置规则,生成所述Web页面。
本申请实施例提供的一种页面生成装置,通过获取与目标页面对应的可扩展标记语言结构定义xsd文件,对xsd文件进行解析,根据解析结果生成与目标页面对应的页面生成代码,根据页面生成代码生成目标页面。由于xsd文件可以是开发人员预先根据页面中的预设的元素进行编写的,编写过程中可以通过调用预设的元素对应的xsd文件,而不必编辑大量代码,同时,通过对xsd文件的解析结果可以生成相应的页面生成代码,以便根据页面生成代码生成目标页面,即自动形成代码,而不必人工编写代码,提高了页面生成的效率。
所述页面生成装置包括处理器和存储器,上述xsd文件获取单元、解析单元、目标页面生成单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来对实现页面生成,提高页面生成的效率。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述页面生成方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述页面生成方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
获取与目标页面对应的可扩展标记语言结构定义xsd文件;
对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码;
根据所述页面生成代码生成所述目标页面。
可选的,所述xsd文件包括节点,所述节点对应于所述目标页面中的元素;所述对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码,包括:
对所述xsd文件的节点进行解析,得到所述节点对应的元素及所述元素的元素信息;
根据所述元素信息,生成对应于所述节点的节点代码;所述节点代码用于生成所述节点对应的元素;
根据对应于所述节点的节点代码,生成与所述目标页面对应的页面生成代码。
可选的,所述节点包括用于描述所述节点的节点信息,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素的元素信息,包括:
获取用于描述所述xsd文件的节点的节点信息,所述节点信息包括所述节点的名称、内容、属性以及所述节点之间的关联关系中的至少一项;
根据所述节点信息,得到所述节点对应的元素的元素信息,所述元素信息包括元素的名称、内容、属性、类别以及所述元素之间的关联关系中的至少一项。
可选的,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素,包括:
若所述节点包括全部指示器、顺序指示器和组合指示器中的至少一项,则确定所述元素为文字;
若所述节点包括选择指示器,则确定所述节点对应的元素为选择控件,所述选择控件用于对所述节点的子节点对应的子元素选择;
若所述节点包括最大频次指示器和/或最小频次指示器,则确定所述节点对应的元素为编辑控件,所述编辑控件用于编辑所述节点的子节点对应的子元素出现的频次;
若所述节点不包括全部指示器、顺序指示器、组合指示器和选择指示器的任意一项,则在所述节点存在内容时,确定所述节点对应的元素为输入控件,所述输入控件分别用于输入所述节点对应的元素的内容。
可选的,所述方法还包括:
接收对所述目标页面中的选择控件的选择指令,显示所述选择指令对应的所述节点的子节点对应的子元素;和/或,
接收对所述目标页面中的编辑控件的编辑指令,根据所述编辑指令对所述节点的子节点对应的子元素出现的频次进行调整;和/或,
接收对所述目标页面中的输入控件的输入指令,显示所述输入指令对应的所述节点的元素的内容。
可选的,所述目标页面为配置页面或Web页面;
所述目标页面为配置页面时,所述根据所述页面生成代码生成所述目标页面,包括:
根据所述页面生成代码,生成配置页面;和/或,
所述目标页面为Web页面时,所述根据所述页面生成代码生成所述目标页面,包括:
获取Web页面的样式设置规则;
根据所述页面生成代码和所述样式设置规则,生成所述Web页面。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
获取与目标页面对应的可扩展标记语言结构定义xsd文件;
对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码;
根据所述页面生成代码生成所述目标页面。
可选的,所述xsd文件包括节点,所述节点对应于所述目标页面中的元素;所述对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码,包括:
对所述xsd文件的节点进行解析,得到所述节点对应的元素及所述元素的元素信息;
根据所述元素信息,生成对应于所述节点的节点代码;所述节点代码用于生成所述节点对应的元素;
根据对应于所述节点的节点代码,生成与所述目标页面对应的页面生成代码。
可选的,所述节点包括用于描述所述节点的节点信息,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素的元素信息,包括:
获取用于描述所述xsd文件的节点的节点信息,所述节点信息包括所述节点的名称、内容、属性以及所述节点之间的关联关系中的至少一项;
根据所述节点信息,得到所述节点对应的元素的元素信息,所述元素信息包括元素的名称、内容、属性、类别以及所述元素之间的关联关系中的至少一项。
可选的,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素,包括:
若所述节点包括全部指示器、顺序指示器和组合指示器中的至少一项,则确定所述元素为文字;
若所述节点包括选择指示器,则确定所述节点对应的元素为选择控件,所述选择控件用于对所述节点的子节点对应的子元素选择;
若所述节点包括最大频次指示器和/或最小频次指示器,则确定所述节点对应的元素为编辑控件,所述编辑控件用于编辑所述节点的子节点对应的子元素出现的频次;
若所述节点不包括全部指示器、顺序指示器、组合指示器和选择指示器的任意一项,则在所述节点存在内容时,确定所述节点对应的元素为输入控件,所述输入控件分别用于输入所述节点对应的元素的内容。
可选的,所述方法还包括:
接收对所述目标页面中的选择控件的选择指令,显示所述选择指令对应的所述节点的子节点对应的子元素;和/或,
接收对所述目标页面中的编辑控件的编辑指令,根据所述编辑指令对所述节点的子节点对应的子元素出现的频次进行调整;和/或,
接收对所述目标页面中的输入控件的输入指令,显示所述输入指令对应的所述节点的元素的内容。
可选的,所述目标页面为配置页面或Web页面;
所述目标页面为配置页面时,所述根据所述页面生成代码生成所述目标页面,包括:
根据所述页面生成代码,生成配置页面;和/或,
所述目标页面为Web页面时,所述根据所述页面生成代码生成所述目标页面,包括:
获取Web页面的样式设置规则;
根据所述页面生成代码和所述样式设置规则,生成所述Web页面。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种页面生成方法,其特征在于,所述方法包括:
获取与目标页面对应的可扩展标记语言结构定义xsd文件;
对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码;
根据所述页面生成代码生成所述目标页面。
2.根据权利要求1所述的方法,其特征在于,所述xsd文件包括节点,所述节点对应于所述目标页面中的元素;所述对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码,包括:
对所述xsd文件的节点进行解析,得到所述节点对应的元素及所述元素的元素信息;
根据所述元素信息,生成对应于所述节点的节点代码;所述节点代码用于生成所述节点对应的元素;
根据对应于所述节点的节点代码,生成与所述目标页面对应的页面生成代码。
3.根据权利要求2所述的方法,其特征在于,所述节点包括用于描述所述节点的节点信息,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素的元素信息,包括:
获取用于描述所述xsd文件的节点的节点信息,所述节点信息包括所述节点的名称、内容、属性以及所述节点之间的关联关系中的至少一项;
根据所述节点信息,得到所述节点对应的元素的元素信息,所述元素信息包括元素的名称、内容、属性、类别以及所述元素之间的关联关系中的至少一项。
4.根据权利要求2所述的方法,其特征在于,所述对所述xsd文件的所述节点进行解析,得到所述节点对应的元素,包括:
若所述节点包括全部指示器、顺序指示器和组合指示器中的至少一项,则确定所述元素为文字;
若所述节点包括选择指示器,则确定所述节点对应的元素为选择控件,所述选择控件用于对所述节点的子节点对应的子元素选择;
若所述节点包括最大频次指示器和/或最小频次指示器,则确定所述节点对应的元素为编辑控件,所述编辑控件用于编辑所述节点的子节点对应的子元素出现的频次;
若所述节点不包括全部指示器、顺序指示器、组合指示器和选择指示器的任意一项,则在所述节点存在内容时,确定所述节点对应的元素为输入控件,所述输入控件分别用于输入所述节点对应的元素的内容。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
接收对所述目标页面中的选择控件的选择指令,显示所述选择指令对应的所述节点的子节点对应的子元素;和/或,
接收对所述目标页面中的编辑控件的编辑指令,根据所述编辑指令对所述节点的子节点对应的子元素出现的频次进行调整;和/或,
接收对所述目标页面中的输入控件的输入指令,显示所述输入指令对应的所述节点的元素的内容。
6.根据权利要求1所述的方法,其特征在于,所述目标页面为配置页面或Web页面;
所述目标页面为配置页面时,所述根据所述页面生成代码生成所述目标页面,包括:
根据所述页面生成代码,生成配置页面;和/或,
所述目标页面为Web页面时,所述根据所述页面生成代码生成所述目标页面,包括:
获取Web页面的样式设置规则;
根据所述页面生成代码和所述样式设置规则,生成所述Web页面。
7.一种页面生成装置,其特征在于,所述装置包括:
xsd文件获取单元,用于获取与目标页面对应的可扩展标记语言结构定义xsd文件;
解析单元,用于对所述xsd文件进行解析,根据解析结果生成与所述目标页面对应的页面生成代码;
目标页面生成单元,用于根据所述页面生成代码生成所述目标页面。
8.根据权利要求7所述的装置,其特征在于,所述xsd文件包括节点,所述节点对应于所述目标页面中的元素;所述解析单元,包括:
解析子单元,用于对所述xsd文件的节点进行解析,得到所述节点对应的元素及所述元素的元素信息;
节点代码生成单元,用于根据所述元素信息,生成对应于所述节点的节点代码;所述节点代码用于生成所述节点对应的元素;
页面生成代码生成单元,用于根据对应于所述节点的节点代码,生成与所述目标页面对应的页面生成代码。
9.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该程序被处理器执行时实现权利要求1至6中任一项所述的页面生成方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至6中任意一项所述的页面生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811094703.XA CN110928540A (zh) | 2018-09-19 | 2018-09-19 | 一种页面生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811094703.XA CN110928540A (zh) | 2018-09-19 | 2018-09-19 | 一种页面生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110928540A true CN110928540A (zh) | 2020-03-27 |
Family
ID=69855963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811094703.XA Pending CN110928540A (zh) | 2018-09-19 | 2018-09-19 | 一种页面生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110928540A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328836A (zh) * | 2020-10-20 | 2021-02-05 | 山东师范大学 | 一种基于vba的图实例生成方法及*** |
CN112416340A (zh) * | 2020-05-14 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 基于草图的网页生成方法和*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120159430A1 (en) * | 2010-12-15 | 2012-06-21 | Microsoft Corporation | Extensible template pipeline for web applications |
CN102646039A (zh) * | 2012-02-29 | 2012-08-22 | 河海大学 | 基于XML Schema的软件界面生成***及方法 |
CN106569824A (zh) * | 2016-11-07 | 2017-04-19 | 腾讯科技(深圳)有限公司 | 页面数据编译的方法和装置、页面渲染的方法和装置 |
-
2018
- 2018-09-19 CN CN201811094703.XA patent/CN110928540A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120159430A1 (en) * | 2010-12-15 | 2012-06-21 | Microsoft Corporation | Extensible template pipeline for web applications |
CN102646039A (zh) * | 2012-02-29 | 2012-08-22 | 河海大学 | 基于XML Schema的软件界面生成***及方法 |
CN106569824A (zh) * | 2016-11-07 | 2017-04-19 | 腾讯科技(深圳)有限公司 | 页面数据编译的方法和装置、页面渲染的方法和装置 |
Non-Patent Citations (1)
Title |
---|
汪春妍: "基于XML模式的XML文档自动生成工具的研究与实现", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416340A (zh) * | 2020-05-14 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 基于草图的网页生成方法和*** |
CN112328836A (zh) * | 2020-10-20 | 2021-02-05 | 山东师范大学 | 一种基于vba的图实例生成方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111475163B (zh) | 视图模板的代码文件生成方法、装置、设备及存储介质 | |
CN105574049B (zh) | 移动应用的页面处理方法、装置和*** | |
CN107729475B (zh) | 网页元素采集方法、装置、终端与计算机可读存储介质 | |
CN108984172B (zh) | 一种界面文件的生成方法及装置 | |
US9575950B2 (en) | Systems and methods for managing spreadsheet models | |
US11095577B2 (en) | Conversation-enabled document system and method | |
CN111414166B (zh) | 代码的生成方法、装置、设备及存储介质 | |
CN106951231B (zh) | 一种计算机软件开发方法及装置 | |
CN106354483B (zh) | 一种数据处理方法、装置及电子设备 | |
CN106933887B (zh) | 一种数据可视化方法及装置 | |
CN107943465B (zh) | 一种生成html表单的方法及装置 | |
CN111427559A (zh) | 表单定制化服务的实现方法、表单生成方法、装置与*** | |
CN110968314B (zh) | 一种页面生成方法及装置 | |
CN111818175A (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
CN113407284A (zh) | 导航界面的生成方法、装置、存储介质及电子设备 | |
CN110941428A (zh) | 一种网站创建方法和装置 | |
CN110928540A (zh) | 一种页面生成方法及装置 | |
JP2019040260A (ja) | 情報処理装置及びプログラム | |
CN111367514A (zh) | 页面卡片的开发方法和装置、计算设备和存储介质 | |
CN116860357A (zh) | 一种页面的动态调整方法、设备及介质 | |
US20040205469A1 (en) | Method for processing a rule using computer-independent program instructions and computer for use therewith | |
CN113553047A (zh) | 一种将dsl转换为可视化页面的方法及装置 | |
US20040025114A1 (en) | Preserving content or attribute information during conversion from a structured document to a computer program | |
CN117289905B (zh) | 一种应用软件开发方法和装置、存储介质和电子设备 | |
CN111367515B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200327 |