一种生成表格页面的方法及计算设备技术

技术编号:30966693 阅读:23 留言:0更新日期:2021-11-25 20:38
本发明专利技术公开了一种生成表格页面的方法,在计算设备中执行,包括:获取与表格相对应的树形数据结构,树形数据结构中包括基于树结构排布的多个节点,每个节点对应一个列头,每个列头包含一个或多个子列;根据所述树形数据结构确定一个或多个待合并列头,并根据一个或多个待合并列头确定在表格中与每个待合并列头相对应的一组待合并单元格,每组待合并单元格包括多个单元格;分别基于每组待合并单元格中的每个单元格的标识生成相应的合并数组;基于每个待合并列头的列名和相应的合并数组生成列头数据集;基于列头数据集生成表格页面。本发明专利技术还一并公开了相应的计算设备。根据本发明专利技术的技术方案,可以高效地创建包括合并后的多行表头的表格页面。头的表格页面。头的表格页面。

【技术实现步骤摘要】
一种生成表格页面的方法及计算设备


[0001]本专利技术涉及计算机及互联网
,特别涉及一种生成表格页面的方法及计算设备。

技术介绍

[0002]目前,在基于B/S架构的页面上展示表格、下载表格时,需要开发人员在页面上定义其对应的表头和展示的数据列,当遇到多行合并表头的表格时,需要多次设置行合并和列合并的数量,才能达到目的。在将具有多行表头的表格下载到Excel中时,可以基于Apache POI类库来读写Office格式的文档,要么根据某个表头来操作Excel内的单元格来实现合并行、合并列的效果,要么直接取最末端表头写入到Excel的首行中,以实现数据表的下载。
[0003]基于Jquery组件库的多行表头需要配置每列的合并行数、列数,在多表的情况下,为开发人员带来了巨大的工作量。下载Excel表格时,需要耗费大量精力组织生成多行表头,并且,在下载Excel表格时,需另写一套Java版的表头,重复性工作明显,且后期需要同时维护两套表头,耗费大量人力。
[0004]为此,需要一种生成表格页面的方法来解决上述技术方案中存在的问题。

技术实现思路

[0005]为此,本专利技术提供一种生成表格页面的方法,以力图解决或者至少缓解上面存在的问题。
[0006]根据本专利技术的一个方面,提供了一种生成表格页面的方法,在计算设备中执行,包括步骤:获取与表格相对应的树形数据结构,所述树形数据结构中包括基于树结构排布的多个节点,每个节点对应一个列头,每个列头包含一个或多个子列;根据所述树形数据结构确定一个或多个待合并列头,并根据一个或多个待合并列头确定在表格中与每个待合并列头相对应的一组待合并单元格,每组待合并单元格包括多个单元格;分别基于每组待合并单元格中的每个单元格的标识生成相应的合并数组;基于每个待合并列头的列名和相应的合并数组生成列头数据集;以及基于所述列头数据集生成表格页面。
[0007]可选地,在根据本专利技术的生成表格页面的方法中,根据所述树形数据结构确定一个或多个待合并列头的步骤包括:根据树形数据结构确定包含多个子列的列头,将所述包含多个子列的列头确定为待合并列头。
[0008]可选地,在根据本专利技术的生成表格页面的方法中,所述单元格的标识包括单元格对应的行号和列号,所述分别基于每组待合并单元格中的每个单元格的标识生成相应的合并数组的步骤包括:对于每组待合并单元格,基于其中的每个单元格对应的行号和列号,来生成相应的合并数组;其中,所述合并数组包括第一个单元格对应的行号、要合并到的最后一个单元格对应的行号、第一个单元格对应的列号以及要合并到的最后一个单元格对应的列号。
[0009]可选地,在根据本专利技术的生成表格页面的方法中,基于所述列头数据集生成表格页面的步骤包括:基于所述列头数据集来创建相应的一个或多个合并后的列头;基于所述一个或多个合并后的列头来生成表头;基于所述表头和每个合并后的列头对应的数据列来生成表格页面。
[0010]可选地,在根据本专利技术的生成表格页面的方法中,基于所述一个或多个合并后的列头来生成表头的步骤包括:基于每个合并后的列头对应的绑定字段属性,分别获取相应的绑定字段属性数据;基于一个或多个合并后的列头和相应的绑定字段属性数据生成表头。
[0011]可选地,在根据本专利技术的生成表格页面的方法中,基于所述一个或多个合并后的列头来生成表头之后,还包括步骤:基于单元格的数据类型来设置相应的数据格式。
[0012]可选地,在根据本专利技术的生成表格页面的方法中,在获取与表格相对应的树形数据结构之前,包括步骤:配置生成与表格相对应的树形数据结构,其中,所述树形数据结构中包括与每个节点相对应的列头数据,所述列头数据包括字段属性,所述字段属性包括列名、绑定字段、子列中的一种或多种。
[0013]可选地,在根据本专利技术的生成表格页面的方法中,所述字段属性还包括扩展列名或权重。
[0014]可选地,在根据本专利技术的生成表格页面的方法中,在基于所述列头数据集生成表格页面之后,还包括步骤:将所述表格页面发送至客户端,以便在客户端展示表格页面,或者,下载所述表格页面。
[0015]根据本专利技术的一个方面,提供了一种计算设备,包括:至少一个处理器;以及存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如上所述的生成表格页面的方法的指令。
[0016]根据本专利技术的一个方面,提供了一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如上所述方法。
[0017]根据本专利技术的技术方案,提供了一种生成表格页面的方法,只需预先构建树形数据结构,计算设备在获取树形数据结构后,便可以确定所有待合并列头及其对应的待合并单元格,并基于每个待合并列头和相应的合并数组来生成列头数据集,通过遍历列头数据集便可以依次创建多个合并单元格后的列头,基于原始的树形数据结构中的各级节点,多个合并后的列头可以组合成多行表头,最终生成包括合并后的多行表头的表格页面。这样,本专利技术实现了更高效地创建包括多行表头的表格页面,表格数据的扩展性更强,大幅降低了开发人员的工作量,也减少了大量重复性代码。
附图说明
[0018]为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
[0019]图1示出了根据本专利技术一个实施例的计算设备100的示意图;
[0020]图2示出了根据本专利技术一个实施例的生成表格页面的方法200的流程图;以及
[0021]图3示出了根据本专利技术一个实施例的表格页面的示意图。
具体实施方式
[0022]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0023]本专利技术提供给了一种生成表格页面的方案,通过构建树形数据结构,基于树形数据结构可以高效地创建包括合并后的多行表头的表格页面。
[0024]图1是示例计算设备100的示意框图。
[0025]如图1所示,在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的通信。
[0026]取决于期望的配置,处理器104可以是任何类型的处理,包括但不限于:微处理器(UP)、微控制器(UC)、数字信息处理器(DSP)或者它们的任何组合。处理器104可以包括诸如一级高速缓存110和二级高速缓存112之类的一个或者多个级别的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种生成表格页面的方法,在计算设备中执行,包括步骤:获取与表格相对应的树形数据结构,所述树形数据结构中包括基于树结构排布的多个节点,每个节点对应一个列头,每个列头包含一个或多个子列;根据所述树形数据结构确定一个或多个待合并列头,并根据一个或多个待合并列头确定在表格中与每个待合并列头相对应的一组待合并单元格,每组待合并单元格包括多个单元格;分别基于每组待合并单元格中的每个单元格的标识生成相应的合并数组;基于每个待合并列头的列名和相应的合并数组生成列头数据集;以及基于所述列头数据集生成表格页面。2.如权利要求1所述的方法,其中,根据所述树形数据结构确定一个或多个待合并列头的步骤包括:根据树形数据结构确定包含多个子列的列头,将所述包含多个子列的列头确定为待合并列头。3.如权利要求1所述的方法,其中,所述单元格的标识包括单元格对应的行号和列号,所述分别基于每组待合并单元格中的每个单元格的标识生成相应的合并数组的步骤包括:对于每组待合并单元格,基于其中的每个单元格对应的行号和列号,来生成相应的合并数组;其中,所述合并数组包括第一个单元格对应的行号、要合并到的最后一个单元格对应的行号、第一个单元格对应的列号以及要合并到的最后一个单元格对应的列号。4.如权利要求1

3中任一项所述的方法,其中,基于所述列头数据集生成表格页面的步骤包括:基于所述列头数据集来创建相应的一个或多个合并后的列头;基于所述一个或多个合并后的列头来生成表头;基于所述表头和每个合并...

【专利技术属性】
技术研发人员:程大方
申请(专利权)人:北京齐尔布莱特科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1