一种动态生成表格的系统及方法

文档序号:9667419阅读:603来源:国知局
一种动态生成表格的系统及方法
【技术领域】
[0001] 本发明涉及表格生成技术,尤其涉及一种动态生成表格的系统及方法。
【背景技术】
[0002] 目前的互联网(Web)管理系统,普遍采用Web的表格组件来动态展示数据,现有的 最常用的技术实现方式是用户从前端页面发送请求到后台服务器(以下称数据层),数据 层获取到前端的请求参数后到指定数据库的指定数据表中查询数据封装好,并返回给指定 的前端页面(以下称视图层),展示在视图层的表格组件中。现有的技术存在的缺点有:如 果用户查询的数据过多,即表格对应的实体(以下同)过多时,每一个实体对应一张页面, 则需要维护的页面也会很多,且不方便查找,维护效率低;当某一个实体有了修改时,比如 增加或减少了某些列,相应的需要修改与之对应页面的表格,否则可能出现数据显示错乱 的情况;当增加表格实体时,相应的也要增加与之对应的页面,如果增加的实体很多,那么 需要增加的页面也会很多,这将大大增加维护工作量;每一个实体的查询请求对应一个数 据层的方法,因此数据层的维护工作量也比较大。
[0003] 综上所述,现有的表格生成技术存在灵活性差、维护工作量大等缺点。

【发明内容】

[0004] 针对现有的表格生成技术存在的上述问题,现提供一种旨在实现灵活性高、易于 维护的动态生成表格的系统及方法。
[0005] 具体技术方案如下:
[0006] 一种动态生成表格的系统,包括:
[0007] -接收单元,用以接收用户的查找请求;
[0008] -提取单元,连接所述接收单元,并提供复数个表格标题及与所述表格标题关联 的所有表格列信息,所述提取单元用以根据所述查找请求提取相应的所述表格标题及与所 述查找请求对应且与所述表格标题相关联的所述表格列信息,并输出;
[0009] -处理单元,连接所述提取单元,用以根据所述表格标题获取与所述表格标题对 应的标题数据,根据所述表格列信息获取与所述表格列信息对应的列信息数据,以及对所 述标题数据和所述列信息数据封装形成封装数据,并输出;
[0010] -解析单元,连接所述处理单元,并提供一预设的模板,所述解析单元用以对所述 封装数据进行解析以获取所述表格标题数据和所述表格列信息数据,并将所述表格标题数 据和所述表格列信息数据填充于所述模板的相应位置。
[0011] 优选的,还包括:
[0012] -显示单元,连接所述解析单元,用以显示填充有所述表格标题数据和所述表格 列信息数据的所述模板。
[0013] 优选的,所述提取单元包括:
[0014] 一第一存储模块,用以存储复数个表格标题及与所述表格标题关联的所有表格列 信息;
[0015] 一获取模块,连接所述第一存储模块,用以根据所述查找请求从所述第一存储模 块中提取相应的所述表格标题及与所述查找请求对应且与所述表格标题相关联的所述表 格列信息;
[0016] -生成模块,连接所述获取模块,用以根据与所述查找请求对应的所述表格标题 和与所述查找请求对应且与所述表格标题相关联的所述表格列信息生成一脚本查找文件, 并输出。
[0017] 优选的,所述处理单元包括:
[0018] -第二存储模块,用以存储与所述表格标题对应的标题数据和与所述表格列信息 对应的列信息数据;
[0019] -查找模块,连接所述第二存储模块,用以根据所述脚本查找文件提取所述第二 存储模块中与所述表格标题对应的所述标题数据,及与所述表格列信息对应的所述列信息 数据;
[0020] -封装模块,连接所述查找模块,用以将所述标题数据和所述列信息数据封装,以 形成封装数据,并输出。
[0021] 优选的,所述封装模块采用JS0N格式对所述标题数据和所述列信息数据封装进 行封装。
[0022] -种动态生成表格的方法,提供一第一存储单元用以存储复数个表格标题及与所 述表格标题关联的所有表格列信息,包括下述步骤:
[0023] S1.接收用户的查找请求;
[0024] S2.根据所述查找请求从所述第一存储单元中提取相应的所述表格标题及与所述 查找请求对应且与所述表格标题相关联的所述表格列信息;
[0025] S3.根据所述表格标题获取与所述表格标题对应的标题数据,根据所述表格列信 息获取与所述表格列信息对应的列信息数据,对所述标题数据和所述列信息数据封装形成 封装数据;
[0026] S4.对所述封装数据进行解析以获取所述表格标题数据和所述表格列信息数据, 并将所述表格标题数据和所述表格列信息数据填充于一预设的模板的相应位置。
[0027] 优选的,还包括步骤S5对填充有所述表格标题数据和所述表格列信息数据的所 述模板进行显示。
[0028] 优选的,所述步骤S2包括:
[0029] S21.根据所述查找请求从所述第一存储单元中提取相应的所述表格标题及与所 述查找请求对应且与所述表格标题相关联的所述表格列信息;
[0030] S22.根据与所述查找请求对应的所述表格标题和与所述查找请求对应且与所述 表格标题相关联的所述表格列信息生成一脚本查找文件,并输出。
[0031] 优选的,提供一用以存储与所述表格标题对应的标题数据和与所述表格列信息对 应的列信息数据的第二存储单元,所述步骤S3包括:
[0032] S31.用以根据所述脚本查找文件提取所述第二存储单元中与所述表格标题对应 的所述标题数据,及与所述表格列信息对应的所述列信息数据;
[0033] S32.将所述标题数据和所述列信息数据封装,以形成封装数据,并输出。
[0034] 优选的,采用JS0N格式对所述标题数据和所述列信息数据封装进行封装。
[0035] 上述技术方案的有益效果:
[0036] 1)动态生成表格的系统通过用户提供需要查找的表格的列信息,即可快速查找的 相应列数据,灵活性高且易于维护。
[0037] 2)动态生成表格的方法通过获取用户的查找请求,根据相应的表格标题和列信息 快速灵活的对相应数据进行查找,并将查找到的数据填充于预设的模板并输出,查找的灵 活性高。
【附图说明】
[0038] 图1为本发明所述的动态生成表格的系统的一种实施例的模块图;
[0039] 图2为本发明所述的动态生成表格的方法的一种实施例的方法流程图。
【具体实施方式】
[0040] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其 他实施例,都属于本发明保护的范围。
[0041] 需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相 互组合。
[0042] 下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0043] 如图1所不,一种动态生成表格的系统,包括:
[0044] -接收单元1,用以接收用户的查找请求;
[0045] -提取单元2,连接接收单元1,并提供复数个表格标题及与表格标题关联的所有 表格列信息,提取单元2用以根据查找请求提取相应的表格标题及与查找请求对应且与表 格标题相关联的表格列信息,并输出;
[0046] -处理单元3,连接提取单元2,用以根据表格标题获取与表格标题对应的标题数 据,根据表格列信息获取与表格列信息对应的列信息数据,以及对标题数据和列信息数据 封装形成封装数据,并输出;
[0047] -解析单元4,连接处理单元3,提供一预设的模板,解析单元4用以对封装数据进 行解析以获取表格标题数据和表格列信息数据,并将表格标题数据和表格列信息数据填充 于模板的相应位置。
[0048] 在本实施例中,通过用户提供需要查找的表格的列信息,即可快速查找的相应列 数据,灵活性高且易于维护。
[0049] 在优选的实施例中,还包括:
[0050] -显示单元5,连接解析单元4,用以显示填充有表格标题数据和表格列信息数据 的模板。
[0051 ] 在优选的实施例中,提取单元2包括:
[0052] -第一存储模块21,用以存储复数个表格标题及与表格标题关联的所有表格列信 息;
[0053] -获取模块22,连接第一存储模块21,用以根据查找请求从第一存储模块21中提 取相应的表格标题及与查找请求对应且与表格标题相关联的表格列信息;
[0054] -生成模块23,连接获取模块22,用以根据与查找请求对应的表格标题和与查找 请求对应且与表格标题相关联的表格列信息生成一脚本查找文件,并输出。
[0055] 在本实施例中,用户输入查找请求的方式为通过在开始页面中指定查询数据表格 (包括表格标题)要显示的列(即表格列信息)。在开始页面中放置查询与表格标题对应 的链接,并为每一个链接设置一个地址属性,通过生成模块23将表格对应的表格列信息写 入采用javascript脚本语言编写的脚本查找文件中。当表格增删除列或新增查询列时,无 需修改页面,只需在脚本查找文件中增删列即可,例如:
[0056] varstudentHeaders= {''sno',:"Sno',,"name',:"Name","age',:"Age","sex',:"Sex ","from": "Birthplace","remark": "Remark"};
[0057] 用户在具体操作时,当用户需要查询某个表格的数据时,点击对应的表格标题链 接即可弹出关于该表格标题的所有表格列信息,用户只需选择需要查找的相应的表格列信 息以生成查找请求,通过动态生成表格的系统进行相应的查找以生成相应的表格。
[0058] 在优选的实施例中,处理单元3包括:
[0059] -第二存储模块31,用以存储与表格标题对应的标题数据和与表格列信息对应的 列信息数据;
[0060] -查找模块32,连接第二存储模块31,用以根据脚本查找文件提取第二存储模块 31中与表格标题对应的标题数据,及与表格列信息对应的列信息数据;
[0061] -封装模块33,连接查找模块32,用以将标题数据和列信息数据封装,以形成封 装数据,并输出。
[0062] 进一步地,封装模块33采用JSON(JavaScriptObjectNotation)格式对标题数 据和列信息数据封装进行封装。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1