一种页面生成方法、页面生成系统、存储介质和电子设备与流程

文档序号:27977549发布日期:2021-12-15 01:13阅读:80来源:国知局
一种页面生成方法、页面生成系统、存储介质和电子设备与流程

1.本技术涉及计算机技术领域,特别涉及一种页面生成方法、页面生成系统、存储介质和电子设备。


背景技术:

2.目前模板技术,主要用于定义文案、图表等数据内容的展示,例如邮件通知和文档报告等应用场景,主要采用系统内置模板,其缺点是数据内容是固定的逻辑生成的,用户不可编辑,无法满足不同用户个性化的需求。因此,如何丰富页面内容和展示方式是本领域技术人员亟需解决的技术问题。


技术实现要素:

3.本技术的目的是提供一种页面生成方法、页面生成系统、计算机可读存储介质和电子设备,能够丰富页面内容和展示方式。
4.为解决上述技术问题,本技术提供一种页面生成方法,具体技术方案如下:
5.接收模板自定义编辑请求;
6.确定所述模板自定义编辑请求中的声明变量,并对所述声明变量进行变量赋值;
7.确定所述声明变量的展示方式,并将所述声明变量添加至页面模板;
8.渲染所述页面模板并生成页面。
9.可选的,对所述声明变量进行变量赋值包括:
10.确定数据源,引用所述数据源对所述声明变量进行变量赋值;所述数据源包括数据库中的用户信息表。
11.可选的,所述确定数据源,引用所述数据源对所述声明变量进行变量赋值包括:
12.确定所述数据源;
13.接收包含所述数据源的spl语句编辑指令;
14.解析所述spl语句编辑指令,得到第一spl语句,并利用所述第一spl语句引用所述数据源对所述声明变量进行变量赋值。
15.可选的,采用spl语句引用所述数据源对所述声明变量进行变量赋值包括:
16.接收页面交互指令;
17.解析所述页面交互指令,得到第二spl语句和所述数据源,并利用所述第二spl语句引用所述数据源对所述声明变量进行变量赋值。
18.可选的,对所述声明变量进行变量赋值包括:
19.根据用户输入指令对所述声明变量进行变量赋值。
20.可选的,确定所述模板自定义编辑请求中的声明变量包括:
21.根据所述模板自定义编辑请求确定对应的功能模块;
22.将所述功能模块作为所述声明变量;其中,所述声明变量在作用域内唯一。
23.可选的,渲染所述页面模板并生成页面包括:
24.根据所述页面模板的应用场景确定对应的解析器;
25.利用所述解析器解析所述页面模板,并识别所述声明变量;
26.执行所述声明变量获取对应的结果;
27.按照所述展示方式转化所述结果,并替换所述声明变量,得到页面。
28.本技术还提供一种页面生成系统,包括:
29.请求接收模块,用于接收模板自定义编辑请求;
30.变量配置模块,用于确定所述模板自定义编辑请求中的声明变量,并对所述声明变量进行变量赋值;
31.变量设定模块,用于确定所述声明变量的展示方式,并将所述声明变量添加至页面模板;
32.页面生成模块,用于渲染所述页面模板并生成页面。
33.本技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。
34.本技术还提供一种电子设备,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的方法的步骤。
35.本技术提供一种页面生成方法,包括:接收模板自定义编辑请求;确定所述模板自定义编辑请求中的声明变量,并对所述声明变量进行变量赋值;确定所述声明变量的展示方式,并将所述声明变量添加至页面模板;渲染所述页面模板并生成页面。
36.本技术在接收到模板自定义编辑请求,实现模板中的自定义编辑。具体过程包括变量的声明、赋值、展示等过程,通过在模板支持用户自定义变量,实现用户自定义数据内容和不同的展示方式,扩展了模板功能,丰富了模板的功能实现。
37.本技术还提供一种页面生成系统、计算机可读存储介质和电子设备,具有上述有益效果,此处不再赘述。
附图说明
38.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
39.图1为本技术实施例所提供的一种页面生成方法的流程图;
40.图2为本技术实施例所提供的一种自定义模板示意图;
41.图3为本技术实施例所提供的一种页面生成系统结构示意图:
42.图4为本技术实施例所提供的一种电子设备的结构示意图。
具体实施方式
43.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
44.请参见图1,图1为本技术实施例所提供的一种页面生成方法的流程图,该方法包括:
45.s101:接收模板自定义编辑请求;
46.本实施例的执行主体可以为任意具备模板编辑功能的电子设备,或者为包含模板编辑功能软件的电子设备。本步骤旨在接收模板自定义编辑请求,需要注意的是,该模板自定义编辑请求并不必须为实际存在的请求指令,而可以为具有与模板自定义编辑请求等价作用的其他操作。在本实施例的一种具体应用中,用户在本地模板未包含所需要的功能或者展示方式时,均可以发出模板自定义编辑请求。而在本实施例的另一种具体应用中,在用户实际编辑本地模板过程中,若本地模板未包含其实现的功能或者展示方式,则在检测到本地模板未包含的功能或者展示方式时,同样可以视为接收到模板自定义编辑请求。
47.容易理解的是,本实施例默认存在本地模板,所谓本地模板,主要指本地系统内置的常用变量及展示方式。本实施例对于本地模板的具体结构、内容各内容的展示方式不作具体限定。例如,ngsoc(next generation security operation center,下一代安全运营中心)系统的soar(security orchestration,automation and response,安全编排与自动化响应)功能,在使用联动封禁ip的应用程序功能时,可以直接使用系统内置变量“攻击者”。当封禁ip的应用程序执行时,会自动解析“攻击者”变量,并引用其解析的数值封禁ip应用程序。当模板自定义编辑请求中存在本地模板无法展示的内容或者无法实现的展示方式,均可以视为本步骤已执行。
48.其次,本实施例对于模板自定义编辑请求的具体请求内容不作限定,其可以包括所请求实现的模板内容、展示方式,或者二者兼有。需要注意的是,模板内容可以包括所展示内容的来源、实现逻辑等,而展示方式包括内容的样式、格式等等。例如,针对内容设置其数据来源,属于模板内容的自定义编辑需求。又例如,若需要展示某一本地模板不存在的字体文字,则其属于展示方式的自定义编辑需求。
49.s102:确定所述模板自定义编辑请求中的声明变量,并对所述声明变量进行变量赋值;
50.本步骤旨在确定声明变量,并进行赋值。该声明变量可以由用户自定义配置,也可以按照预设变量名称配置顺序自动配置,例如变量1、变量2
……
以此类推。若是该变量对应相应本地系统中的功能或者模块,可以直接以相应功能或模块的名称命名。但需要注意的是,该声明变量需要在作用域内唯一。作用域指变量的可访问范围。该作用域可以是一个功能模块,例如soar功能模块,则由soar功能模块对此变量进行后续的解析和渲染操作。作用域也可以是全局唯一,即平台系统内不重复的变量名称。
51.其次,本步骤还需要针对声明变量进行赋值,即为声明变量定义数值。数值描述了数据源和数据的处理过程。例如,若将数据源中用户的在线数为声明变量“上线用户总数”赋值,即可以实时展示上线用户总数。数据源包括数据库中的用户信息表,也可以由用户自定义输入,还可以为经过数据处理计算得到的数据。
52.在此对于如何对声明变量进行变量赋值不作具体限定,下文针对声明变量的赋值方式进行说明:
53.可以先确定数据源,再引用数据源对声明变量进行变量赋值,例如可以采用spl(structured process language)语句实现这一过程。spl语句是一种面向数据结构化数据
计算处理的程序设计语言。作为一种独立的程序设计语言,不绑定某种数据库,通过关键字完成过滤、聚合、排序、裁剪和投影等功能,以管道式等方便易用的语句实现复杂的数据处理。
54.具体的,可以包括如下步骤:
55.s201:确定数据源;
56.s202:接收包含数据源的spl语句编辑指令;
57.s203:解析spl语句编辑指令,得到第一spl语句,并利用第一spl语句引用数据源对声明变量进行变量赋值。
58.该数据源可以由用户确定,此后即可接收spl语句编辑指令,spl语句编辑指令指包含spl语句的编辑指令。解析spl语句编辑指令,即可得到第一spl语句,根据该第一spl语句引用s201中确定的数据源对声明变量进行赋值。本实施例中,该spl语句编辑指令可以由用户直接编辑。
59.在另一实施例中,还可以通过页面交互方式最终转化生成spl语句。具体的,可以接收页面交互指令,从而解析页面交互指令,得到第二spl语句和数据源,并利用第二spl语句引用数据源对声明变量进行变量赋值。所谓页面交互方式,即在页面中提供各步骤的选项由用户进行选择,例如提供数据源的选择,以及可操作的过程选择,包括但不限于过滤、分组聚合、是否采用条件限制、格式化和字符串转化等,以便对spl语句不熟悉的用户直接通过页面交互选项进行选择,并自动转化成相应的第二spl语句,从而通过第二spl语句引用数据源并进行变量赋值。
60.容易理解的是,除了采用spl语句外,还可以采用其他类似于spl语句的其他程序设计语言,例如sql语句等,在此不一一举例限定。
61.此外,当针对用文本数据或者文件数据时,可以直接根据用户输入指令对声明变量进行变量赋值。例如,直接定义在线用户上限为一固定值,此时无需引用数据源,可以直接根据用户输入指令中的内容对声明变量进行变量赋值。
62.还需要注意的是,本步骤中的变量赋值过程还可以支持变量的嵌套引用,即令声明变量引用第二变量,将第二变量作为声明变量的赋值。例如,变量a的赋值为spl语句,内容为“search user|filter online=1|agg count(name)”,变量b的值定义为用户输入的文本数据text,内容为“用户上线人数${a}人”,其中变量b通过“${a}”的方式引用了变量a,“${}”代表变量的引用关系,其中的“a”则为被引用的声明变量名称。
63.s103:确定所述声明变量的展示方式,并将所述声明变量添加至页面模板;
64.在步骤102确定声明变量并赋值后,本步骤需要确定声明变量的展示方式。在此对于具体的展示方式不作限定,可以包括但不限于字符串、图片和文件等方式。需要注意的是,展示方式与声明变量的内容无关。例如,声明变量为在线用户人数,其可以通过字符串方式显示,也可以通过一张包含“在线用户人数”等内容的图片进行展示,甚至可以通过附件等形式进行展示。因此,每个声明变量的展示方式均可以由用户自定义设置。当然,还可以针对每种声明变量进行默认的展示方式,例如默认文本类型的声明变量以字符串形式展示,而图表类型的声明变量以图片形式展示等等,使得用户无需对每种声明变量进行展示方式确认,而只需针对特殊展示方式的声明变量进行设定,从而提高自定义模板的生成效率。
65.此外,本实施例中的声明变量,其可以与本地已有的页面模板相结合,也可以将所有自定义的声明变量相结合生成新的页面模板。换句话说,本步骤中用于添加声明变量的页面模板,可以为本地模板,也可以自定义模板,在此不作具体限定。
66.s104:渲染所述页面模板并生成页面。
67.本步骤旨在渲染模板,从而生成包含声明变量的页面。页面模板实际为结构化形式的标准,在本实施例的实际应用中可以结合页面模板的应用场景,并在渲染页面模板之前完成声明变量的引用。页面模板渲染时,可以根据不同应用场景的页面模板,使用不同的解析器,对页面模板的内容进行解析,识别页面模板中引用的变量,将每个变量生成数值。例如,变量a定义了spl语句“search user|filter online=1|agg count(name)”,执行该spl语句将获取其结果数值。每个变量对应一个结果数值,根据预先定义的展示方式对其结果数值进行转化,再通过变量替换的方式,最终渲染到页面模板中,从而得到相应的页面。
68.本技术实施例在接收到模板自定义编辑请求,实现模板中的自定义编辑。具体过程包括变量的声明、赋值、展示等过程,通过在模板支持用户自定义变量,实现用户自定义数据内容和不同的展示方式,扩展了模板功能,丰富了模板的功能实现。
69.下文以本技术的一种具体应用过程对本技术提供的一种页面生成方法进行描述:
70.以发送邮件的模板为例,该模板通常需要分别定义收件人、邮件标题、邮件正文和附件等内容,而邮件正文和附件均可如上述实施例实现自定义编辑,例如邮件正文中的部分数据通过自定义的声明变量进行引用。
71.例如,邮件正文中可以包括如下内容:
[0072]“您好,${platform}发现您管理的资产存在安全事件:
[0073]
资产ip:${hostip}
[0074]
事件名称:${incidentname}
[0075]
首次发现时间:${firsttime}
[0076]
最近发现时间:${lasttime}
[0077]
已通知次数:${times}次
[0078]
已通知时长:${duration}
[0079]
通知时间:${now}
[0080]
具体安全事件信息可以在报告中查看,请尽快处置,如有疑问请联系${expert}或电话联系${phone}。”[0081]
而“${}”作为一种spl语句,代表变量的引用关系,则括号内部诸如platform、hostip等变量均为被引用的、且包含相应数据源的声明变量,可以按照上文所述实施例进行声明变量的设定。在实际渲染过程中,可以读取spl语句引用数据源并填入相应的数据,即可实现页面模板的渲染,得到相应的页面。上述被引用的变量,如“${incidentname}”或“${firsttime}”等,这些变量需要事先在系统中声明相同的变量名称、并进行赋值和展示方式的确定,这些声明变量将在模板渲染时生效。
[0082]
沿引上例,上文所述的邮件正文,可渲染得到如下的内容:
[0083]“您好,安全大数据管理平台发现您管理的资产存在安全事件:
[0084]
资产ip:1.2.3.4
[0085]
事件名称:locky勒索病毒
[0086]
首次发现时间:2021

05

06 14:00:00
[0087]
最近发现时间:2021

05

07 14:17:00
[0088]
已通知次数:2次
[0089]
已通知时长:1天0小时17分钟
[0090]
通知时间:2021

05

07 14:17:00
[0091]
具体安全事件信息可以在报告中查看,请尽快处置,如有疑问请联系张三或电话联系1234567890”[0092]
而具体的展示方式在此不作限定。
[0093]
针对邮件的附件内容,用户也可以手动上传一个文档类型的文件模板,文档可以预先定义文档的内容和样式等,关键数据则通过变量的形式引用,如图2所示:
[0094]
图2中,${number}、${incidentname}
……
${damage}和${suggestion}均为自定义的声明变量,并通过整合这些声明变量得到如图2所示的页面模板,图2为本技术实施例所提供的一种自定义模板示意图,则可以直接应用该模板,引用声明变量对应的关键数据,实现页面模板的渲染并生成页面。
[0095]
此外,模板渲染完成后,可以生成对应的模板结果,该模板结果可以被其他模块继续引用,执行下一步操作。例如发送邮件模板,已渲染好的收件人、邮件标题、邮件正文和附件等内容,将被发送邮件的功能接口引用,并触发执行邮件的发送操作。
[0096]
下面对本技术实施例提供的一种页面生成系统进行介绍,下文描述的页面生成系统与上文描述的页面生成方法可相互对应参照。
[0097]
参见图3,图3为本技术实施例所提供的一种页面生成系统结构示意图,本技术还提供一种页面生成系统,包括:
[0098]
请求接收模块100,用于接收模板自定义编辑请求;
[0099]
变量配置模块200,用于确定所述模板自定义编辑请求中的声明变量,并对所述声明变量进行变量赋值;
[0100]
变量设定模块300,用于确定所述声明变量的展示方式,并将所述声明变量添加至页面模板;
[0101]
页面生成模块400,用于渲染所述页面模板并生成页面
[0102]
基于上述实施例,作为优选的实施例,所述变量配置模块200包括:
[0103]
第一赋值子模块,用于确定数据源,采用spl语句引用所述数据源对所述声明变量进行变量赋值;所述数据源包括数据库中的用户信息表。
[0104]
基于上述实施例,作为优选的实施例,所述确定数据源,所述第一赋值子模块包括:
[0105]
第一赋值单元,用于确定所述数据源;接收包含所述数据源的spl语句编辑指令;解析所述spl语句编辑指令,得到第一spl语句,并利用所述第一spl语句引用所述数据源对所述声明变量进行变量赋值。
[0106]
基于上述实施例,作为优选的实施例,采用spl语句引用所述数据源对所述声明变量进行变量赋值包括:
[0107]
第二赋值单元,用于接收页面交互指令;解析所述页面交互指令,得到第二spl语句和所述数据源,并利用所述第二spl语句引用所述数据源对所述声明变量进行变量赋值。
[0108]
基于上述实施例,作为优选的实施例,所述变量配置模块200包括:
[0109]
第二赋值子模块,用于根据用户输入指令对所述声明变量进行变量赋值。
[0110]
基于上述实施例,作为优选的实施例,所述变量配置模块200包括:
[0111]
变量嵌套赋值模块,用于令所述声明变量引用第二变量,将所述第二变量作为所述声明变量的赋值。
[0112]
基于上述实施例,作为优选的实施例,变量配置模块200包括:
[0113]
模块确定单元,用于根据所述模板自定义编辑请求确定对应的功能模块;
[0114]
变量配置单元,用于将所述功能模块作为所述声明变量;其中,所述声明变量在作用域内唯一。
[0115]
基于上述实施例,作为优选的实施例,页面生成模块400包括:
[0116]
解析器确定单元,用于根据所述页面模板的应用场景确定对应的解析器;
[0117]
模板解析单元,用于利用所述解析器解析所述页面模板,并识别所述声明变量;
[0118]
结果获取单元,用于执行所述声明变量获取对应的结果;
[0119]
页面生成单元,用于按照所述展示方式转化所述结果,并替换所述声明变量,得到页面。
[0120]
本技术还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的页面生成方法的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0121]
本技术还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的页面生成方法的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。请参见图4,图4为本技术实施例所提供的一种电子设备的结构示意图,本实施例的电子设备可以包括:处理器2101和存储器2102。
[0122]
可选的,该电子设备还可以包括通信接口2103、输入单元2104和显示器2105和通信总线2106。
[0123]
处理器2101、存储器2102、通信接口2103、输入单元2104、显示器2105、均通过通信总线2106完成相互间的通信。
[0124]
在本技术实施例中,该处理器2101,可以为中央处理器(central processing unit,cpu),特定应用集成电路,数字信号处理器、现成可编程门阵列或者其他可编程逻辑器件等。
[0125]
该处理器可以调用存储器2102中存储的程序。具体的,处理器可以执行上文的实施例中电子设备所执行的操作。
[0126]
存储器2102中用于存放一个或者一个以上程序,程序可以包括程序代码,所述程序代码包括计算机操作指令,在本技术实施例中,该存储器中至少存储有用于实现以下功能的程序:
[0127]
接收模板自定义编辑请求;
[0128]
确定所述模板自定义编辑请求中的声明变量,并对所述声明变量进行变量赋值;
[0129]
确定所述声明变量的展示方式,并将所述声明变量添加至页面模板;
[0130]
渲染所述页面模板并生成页面。
[0131]
在一种可能的实现方式中,该存储器2102可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、以及至少一个功能(比如话题检测功能等)所需的应用程序等;存储数据区可存储根据计算机的使用过程中所创建的数据。
[0132]
此外,存储器2102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
[0133]
该通信接口2103可以为通信模块的接口,如gsm模块的接口。
[0134]
本技术还可以包括显示器2105和输入单元2104等等。
[0135]
图4所示的电子设备的结构并不构成对本技术实施例中电子设备的限定,在实际应用中电子设备可以包括比图4所示的更多或更少的部件,或者组合某些部件。
[0136]
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0137]
本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
[0138]
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1