一种表单数据的存取方法及装置的制作方法

文档序号:6369743阅读:181来源:国知局
专利名称:一种表单数据的存取方法及装置的制作方法
技术领域
本发明实施例涉及数据库技术领域,尤其涉及ー种表单数据的存取方法及装置。
背景技术
表单可以是在互联网应用中负责用户数据采集功能的ー类网页,比如用户登录、填写的网站调查表、发表微博用的输入界面等等,这些都是表单,也是网页中最基本、最简单形式的表单。如图I所示,多表单用户界面示意图窗ロ左侧为表单组,包括多个表单,窗ロ右侧为表单页。表单页包括多个元素,元素如名称(姓名)。
传统表单的存取方式是表单与表单之间相互独立,互不影响,各自完成相应的エ作。但是,如果表单与表单之间存在着极为密切的联系,所有表単数据是一条完整的业务数据,所有表单是ー个整体。此时,若还采用传统表单的存取方式,则不仅需要在前台做大量的表単,而且还要在后台为每ー个表单提供对应的存取处理。如果有数十个、上百个业务,工作量更是难以想象,这样的方式处理,不但给开发工作带来巨大困扰。而且,因表单相互独立,表单间传输又不同歩,不仅无法保证数据的正确性、完整性和关联性,以及表单难以维护、可扩展伸縮性差。

发明内容
本发明实施例的目的是提供一种表单数据的存取方法及装置,实现表单数据的完整、一致,并提高表单的可维护性和可扩展性。本发明实施例的目的是通过以下技术方案实现的一种表单数据的存取方法,包括根据各表单中元素的配置信息,确定要保存的元素;将所有表单中要保存的元素的配置信息以及所述元素的数据一次性发送给服务器,以使所述服务器保存所述元素的数据;用于确定要保存的元素的所述配置信息包括保存字段、保存表名和是否入库。一种表单数据的存取装置,包括第一确定单元,用于根据各表单中元素的配置信息,确定要保存的元素;第一发送单元,用于将所有表单中要保存的元素的配置信息以及所述元素的数据一次性发送给服务器,以使所述服务器保存所述元素的数据;用于确定要保存的元素的所述配置信息包括保存字段、保存表名和是否入库。由上述本发明提供的技术方案可以看出,根据配置信息,实现表単数据的存取,表单可以作为ー个整体,前后台表单存储代码通用,不仅保证了表単数据完整、一致,并提高表单的可维护性和可扩展性。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。图I为现有技术中多表单用户界面示意图。图2为本发明实施例提供的表単数据的存取方法的流程示意图。图3为本发明实施例提供的表单数据的存取装置的构成示意图。图4为本发明实施例提供的表単数据的存取方法的架构示意图。图5为本发明实施例提供的表単数据的存取方法中表单保存流程示意图。图6为本发明实施例提供的表単数据的存取方法中表单读取流程示意图。
具体实施例方式下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。如图2所示,本发明实施例提供一种表单数据的存取方法,包括21、根据各表单中元素的配置信息,确定要保存的元素。22、将所有表单中要保存的元素的配置信息以及所述元素的数据一次性发送给服务器,以使所述服务器保存所述元素的数据;用于确定要保存的元素的所述配置信息包括保存字段、保存表名和是否入库。由上述本发明提供的技术方案可以看出,根据配置信息,实现表単数据的存取,表单可以作为ー个整体,前后台表单存储代码通用,不仅保证了表単数据完整、一致,并提高表单的可维护性和可扩展性。其中,可以为表单中元素设置配置信息。配置信息可以包括但不限干控件ID (Identity,标识)、字段解释、页码、控件类型、水平对齐、垂直对齐、字体、字体大小、背景顔色、字体顔色、行间距、是否可见、是否打印、编辑角色、长度、高度、默认值、字段类型、保存字段、保存表名、是否主键、是否入库、外键表名、查询字段、查询表名、カロ载时查询、表单验证、错误提示、表单公式等。本领域技术人员可以知道,主键是能确定一条记录的唯一标识,比如,一条记录包括身份证号,姓名,年龄,仅有身份证号能唯一确定某个人,则身份证号是主键。而外键是用干与另ー张表的关联,其能确定另一张表记录的字段,用于保持数据的一致性。比如,表I中的一个字段A是表2的主键,则该字段A是表I的外键。具体的,用于确定要保存的元素的配置信息可以包括保存字段、保存表名和是否入库。也就是如果ー个元素的“保存字段”、“保存表名”和“是否入库”三个属性都有配置且“是否入库”属性为“入库”,则认为该元素的内容(数据)需要保存到数据库。其中,所有表单可以以组的形式出现,不管表单页数量多少,ー个表单页,也可以认为是ー个表单组。
其中,元素(也可以称为数据项)的配置信息以及元素的数据可以按JSON(JavaScript Object Notation, —种轻量级的数据交换)格式进行组织,统ー发送到服务器(后台)。在后台可以按照表单数据项存储关系,分别组织好SQL (Structured QueryLanguage,结构化查询语言)语句,通过数据库事务处理的方式,一次性执行完成。其中,所述服务器的存储单元保存元素的数据。可选的,本发明实施例表単数据的存取方法,还可以包括当所述元素的数据保存完成后,将所述表单的页面文件发送给服务器,以使所述服务器保存所述表单的页面文件。其中,所述服务器的存储单元保存表单的页面文件。也就是当表单数据保存完成后,再触发页面文件保存,将页面文件发送至后台,进 行文件存储,而表单共储存了哪些文件的信息,存放在数据库表中。可选的,本发明实施例表単数据的存取方法,还可以包括发送读取页面文件请求给所述服务器;接收所述服务器发送的所述表单的页面文件的访问路径,根据所述访问路径加载所述表单的页面文件。其中,所述服务器保存表单的页面文件时,将页面文件存储位置信息存入数据库表中。其中,加载可以理解为读取。可选的,本发明实施例表単数据的存取方法,还可以包括所述表单的页面文件加载完成后,根据元素的配置信息,确定所述表单中需要加载的元素,发送读取元素请求给所述服务器;接收所述服务器发送的数据,将所述数据赋值给所述元素。其中,用于确定要加载的元素的配置信息可以包括查询字段、查询表名和是否加载时查询。如果ー个元素的“查询字段”、“查询表名”和“加载时查询”三个属性都有配置且“是否加载时查询”属性为“加载时查询,则认为该元素在表单页面加载完成后,需要通过查询获取数据。综上可见,本发明实施例表単数据的存取方法前台表单组作为ー个整体,后台存储代码通用共享。如何存取表单数据,完全取决于表单元素中的配置信息。避免现有技术中ー个表单对应后台要有一段存储代码和一段读取代码,程序开发工作量大的缺陷。表单的维护只需要修改前台表单配置信息即可,后台程序无修作任何修改。例如,如果是需要增加新的表单数据或表单页,可以增加或修改前台表单页面配置信息,大大的提高了程序的可维护性和可扩展性。避免现有技术中要修改表单,传统表单,不仅需要对前台界面表单元素作修改,同吋,还要对后台表单存储代码和表单读取代码,分别作修改,导致的维护工作繁琐、涉及代码调整、且容易出错的缺陷。将表单组看作ー个整体,数据一次性传输完,后台数据存储的按事务方式处理。从根本上解决了数据完整性和关联性的问题。避免现有技术中表单相互独立,表单间传输又不同步,而要实现对数据库进行按事务处理,无法保证数据的完整性和关联性的缺陷。表单在前台按页存放,层次感清晰,前后台表单存取代码通用,前后台之间彼此独立,互不干拢,前台只需要按规则配置表单元素信息,不需要知道后台表单如何存取,提高代码执行效率和代码可重用性,降低了程序耦合度。避免现有技术中元素全部在ー个页面,表单元素堆积如山,代码混乱、缺乏层次,即使采用MVC三层架构,其后台也是代码多冗余,程序耦合度高的缺陷。 如图3所示,对应于上述实施例的表单数据的存取方法,本发明实施例提供ー种表単数据的存取装置,包括第一确定单元31,用于根据各表单中元素的配置信息,确定要保存的元素。第一发送单元32,用于将所有表单中要保存的元素的配置信息以及所述元素的数据一次性发送给服务器,以使所述服务器保存所述元素的数据;用于确定要保存的元素的所述配置信息包括保存字段、保存表名和是否入库。由上述本发明提供的技术方案可以看出,根据配置信息,实现表単数据的存取,表单可以作为ー个整体,前后台表单存储代码通用,不仅保证了表単数据完整、一致,并提高表单的可维护性和可扩展性。 本发明实施例表単数据的存取装置,还可以包括第二发送单元,用于当所述元素的数据保存完成后,将所述表单的页面文件发送给服务器,以使所述服务器保存所述表单的页面文件。本发明实施例表单数据的存取装置,还可以包括第三发送单元,用于发送读取页面文件请求给所述服务器;第一接收单元,用于接收所述服务器发送的所述表单的页面文件的访问路径,根据所述访问路径加载所述表单的页面文件。本发明实施例表単数据的存取装置,还可以包括第一确定单元,用于所述表单的页面文件加载完成后,根据元素的配置信息,确定所述表单中需要加载的元素,发送读取元素请求给所述服务器;第二接收发送単元,用于接收所述服务器发送的数据,将所述数据加载给所述元素。其中,用于确定要加载的元素的所述配置信息可以包括查询字段、查询表名和是否加载时查询。本发明实施例表单数据的存取装置及其构成,可以对应參考上述实施例的表単数据的存取方法的相应内容得以理解,在此不作赘述。如图4所示,Client客户端(前台)浏览器页面中,表单以组的形式出现,不管表单页数量多少,ー个表单页,也可以认为是ー个表单组。表单与表单之间、表单组与表单组之间,建立起ニ维表单关系。在前台通过javascript (简称JS)脚本语言来控制管理表单的各项操作,组织或分解表単数据项。而且,前台动态装载控制,表单元素的权限、样式、数据验证、共享事件等等。在Server服务器(后台),逻辑处理,按读取或存储要求分解、组织数据。表单的数据保存,分成两种形态I、数据库形式在前台将各表单数据项组织成ー个整体,一次性发往后台,在后台按照表单数据项存储关系(如表间关系,见下文描述),分别组织好SQL语句,通过数据库事务处理的方式,一次性执行完成。
2、表单文件形式当表単数据项保存完成后,返回前台,再触发文件保存,将页面文件发送至后台,进行文件存储。表单共储存了哪些文件的信息,存放在数据库表中。如图5所示,表単数据的存取方法中表单保存流程51、获取表单页。52、获取该表单数据项。53、判断表单是否遍历完成,如果是,进入54,否则,进入51,直到表单遍历完成。54、将表单数据项以JSON格式组织成ー个整体,一次性发往后台。 也就是51-54,在前台,用JS对所有表单组页面,进行枚挙,筛选出要保存的表单数据项,并将数据项的值以及配置信息按JSON格式进行组织,统ー发送到后台。配置信息可以包括“保存字段”、“保存表名”、“是否入库”、“是否是主键”。“保存字段”是对应数据项内容的存储位置。“保存表名”是对应数据项的存储表。“是否入库”对应为“是入库”或者“不入库”。“是否是主键”对应为“是主键”或者“不是主键”。55、表名按表间关系排序。56、保存事务开始。57、判断是保存结束,如果是,进入59,否则,进入58。58、检索出属于该表名的所有数据项59、提交保存事务。510、将检索结果中分成若干存储单元。511、判断是否更新,如果是,进入512,否则,进入513。512、组织更新SQL语句。513、组织插入SQL语句。514、执行保存,返回結果。也就是55-514,在后台,接收到数据后,对所有要进行保存的数据表名进行排序(按数据库表间关系排序,因表间关系,决定存储顺序),表名顺序,即表的存储顺序。开启数据库事务,循环,逐个表进行保存操作。保存吋,对保存操作进行判断,如果有主键值的,则认为是记录更新操作,如果无主键值的,则认为是记录新增操作。组织好对应的SQL语句后,执行保存。515、将所有新增的记录主键。组成JSON字符串。516、前台回调函数获取返回值,将值写入表单对应项。也就是515-516,保存事务是新增操作,则将新增记录的主键值,以JSON的形式,返回到前台。517、触发保存表单文件操作。518、将表单文件页面内容发往后台。也就是517-518,在前台,Ajax异步请求回调函数中,把主键值,写入对应的表单数据项中。完成后,触发表单文件保存操作发送表单页面内容到后台。519、保存表单文件。5110、将文件存储位置信息存入数据库表。
也就是519-5110,后台接收到数据后,可以保存页面为html文件,完成后,将文件存储的位置信息,保存到数据库记录中。表単文件存储,以任务号作为根文件夹,按年月日的目录形式存放,如果表单文件已经保存过,则存储位置不变,只覆盖原来的文件。本发明实施例表单数据的存取方法前台表单组作为ー个整体,后台存储代码通用共享。如何存取表单数据,完全取决于表单元素中的配置信息。避免现有技术中ー个表单对应后台要有一段存储代码和一段读取代码,程序开发工作量大的缺陷。表单的维护只需要修改前台表单配置信息即可,后台程序无修作任何修改。同样,如果是需要増加新的表单数据或表单页,也是仅仅、増加或修改前台表单页面配置信息,大大的提高了程序的可维护性和可扩展性。避免现有技术中要修改表单,传统表単,不仅需要对前台界面表单元素作修改,同吋,还要对后台表单存储代码和表单读取代码,分别作修 改,导致的维护工作繁琐、涉及代码调整、且容易出错的缺陷。将表单组看作ー个整体,数据一次性传输完,后台数据存储的按事务方式处理。从根本上解决了数据完整性和关联性的问题。避免现有技术中表单相互独立,表单间传输又不同步,而要实现对数据库进行按事务处理,无法保证数据的完整性和关联性的缺陷。表单在前台按页存放,层次感清晰,前后台表单存取代码通用,前后台之间彼此独立,互不干拢,前台只需要按规则配置表单元素信息,不需要知道后台表单如何存取,提高代码执行效率和代码可重用性,降低了程序耦合度。避免现有技术中元素全部在ー个页面,表单元素堆积如山,代码混乱、缺乏层次,即使采用MVC三层架构,其后台也是代码多冗余,程序耦合度高的缺陷。如图6所示,表単数据的存取方法中表单读取流程61、发送加载表单请求。前台发送加载表单请求。62、从数据库中获取表单保存位置。后台从数据库中获取表单保存位置。63、将当前任务所有表单访问路径返回。后台将当前任务所有表单访问路径返回前台。64、表单组件按路径加载表单文件。前台的表单组件按路径加载表单文件。65、表单渲染、权限加载、事件初始化。前台进行表单渲染、权限加载、事件初始化。也就是,61-65的一个阶段是加载表单页面文件,由前台发送Ajax请求到后台,后台从数据库表中读取表单保存位置信息。后台组织成JS0N,返回给前台,前台的表单组件解析表单路径并加载表单文件。待前台所有表単文件加载完成后,渲染各表单元素样式,设置元素可编辑状态、可打印状态以及可见性等等。同时,初始化元素的事件处理,如数据共享事件,数据验证事件
坐寸ο66、判断是否从数据库加载,如果是,进入67,否则,表单加载完成。67、按配置信息,组织加载数据项。
前台按配置信息,组织加载数据项。配置信息包括“查询字段”、“查询表名”、“是否加载时查询”、“是否是主键”。“查询字段”是对应查询数据项内容的位置。“查询表名”是对应查询数据项的表。“是否加载时查询”对应为“是加载时查询”或者“不是加载时查询”。“是否是主键”对应为“是主键”或者“不是主键”。68、按数据项组织加载SQL语句。后台按数据项组织加载SQL语句。69、返回查询結果。后台返回查询结果。 610、解析,按键值对赋值到表单元素。前台解析,按键值对赋值到表单元素。键值对以及赋值方式可以參考现有技术得
以理解。也就是,67-610的阶段加载表单数据项,前台将表单中所有需要从数据库记录中加载数据的元素筛选出来,组织成JS0N,发送请求到后台,后台进行数据查询,并返回查询结果给前台,前台将结果按配置信息,赋值到表单对应的数据项中。本发明实施例表单数据的存取方法前台表单组作为ー个整体,后台存储代码通用共享。如何存取表单数据,完全取决于表单元素中的配置信息。避免现有技术中ー个表单对应后台要有一段存储代码和一段读取代码,程序开发工作量大的缺陷。表单的维护只需要修改前台表单配置信息即可,后台程序无修作任何修改。同样,如果是需要増加新的表单数据或表单页,也是仅仅、増加或修改前台表单页面配置信息,大大的提高了程序的可维护性和可扩展性。避免现有技术中要修改表单,传统表単,不仅需要对前台界面表单元素作修改,同吋,还要对后台表单存储代码和表单读取代码,分别作修改,导致的维护工作繁琐、涉及代码调整、且容易出错的缺陷。将表单组看作ー个整体,数据一次性传输完,后台数据存储的按事务方式处理。从根本上解决了数据完整性和关联性的问题。避免现有技术中表单相互独立,表单间传输又不同步,而要实现对数据库进行按事务处理,无法保证数据的完整性和关联性的缺陷。表单在前台按页存放,层次感清晰,前后台表单存取代码通用,前后台之间彼此独立,互不干拢,前台只需要按规则配置表单元素信息,不需要知道后台表单如何存取,提高代码执行效率和代码可重用性,降低了程序耦合度。避免现有技术中元素全部在ー个页面,表单元素堆积如山,代码混乱、缺乏层次,即使采用MVC三层架构,其后台也是代码多冗余,程序耦合度高的缺陷。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体( Random AccessMemory, RAM)等。
权利要求
1.一种表单数据的存取方法,其特征在于,包括 根据各表单中元素的配置信息,确定要保存的元素; 将所有表单中要保存的元素的配置信息以及所述元素的数据一次性发送给服务器,以使所述服务器保存所述元素的数据;用于确定要保存的元素的所述配置信息包括保存字段、保存表名和是否入库。
2.根据权利要求I所述的表单数据的存取方法,其特征在于,所述方法,还包括 当所述元素的数据保存完成后,将所述表单的页面文件发送给服务器,以使所述服务器保存所述表单的页面文件。
3.根据权利要求2所述的表单数据的存取方法,其特征在于,所述方法,还包括 发送读取页面文件请求给所述服务器; 接收所述服务器发送的所述表单的页面文件的访问路径,根据所述访问路径加载所述表单的页面文件。
4.根据权利要求3所述的表单数据的存取方法,其特征在于,所述方法,还包括 所述表单的页面文件加载完成后,根据元素的配置信息,确定所述表单中需要加载的元素,发送读取元素请求给所述服务器; 接收所述服务器发送的数据,将所述数据赋值给所述元素。
5.根据权利要求4所述的表单数据的存取方法,其特征在于,用于确定要加载的元素的所述配置信息包括查询字段、查询表名和是否加载时查询。
6.一种表单数据的存取装置,其特征在于,包括 第一确定单元,用于根据各表单中元素的配置信息,确定要保存的元素; 第一发送单元,用于将所有表单中要保存的元素的配置信息以及所述元素的数据一次性发送给服务器,以使所述服务器保存所述元素的数据;用于确定要保存的元素的所述配置信息包括保存字段、保存表名和是否入库。
7.根据权利要求6所述的表单数据的存取装置,其特征在于,所述装置,还包括 第二发送单元,用于当所述元素的数据保存完成后,将所述表单的页面文件发送给服务器,以使所述服务器保存所述表单的页面文件。
8.根据权利要求7所述的表单数据的存取装置,其特征在于,所述装置,还包括 第三发送单元,用于发送读取页面文件请求给所述服务器; 第一接收单元,用于接收所述服务器发送的所述表单的页面文件的访问路径,根据所述访问路径加载所述表单的页面文件。
9.根据权利要求8所述的表单数据的存取装置,其特征在于,所述装置,还包括 第一确定单元,用于所述表单的页面文件加载完成后,根据元素的配置信息,确定所述表单中需要加载的元素,发送读取元素请求给所述服务器; 第二接收发送单元,用于接收所述服务器发送的数据,将所述数据赋值给所述元素。
10.根据权利要求9所述的表单数据的存取装置,其特征在于,用于确定要加载的元素的所述配置信息包括查询字段、查询表名和是否加载时查询。
全文摘要
本发明实施例公开了一种表单数据的存取方法及装置,其中,表单数据的存取方法,包括根据各表单中元素的配置信息,确定要保存的元素;将所有表单中要保存的元素的配置信息以及所述元素的数据一次性发送给服务器,以使所述服务器保存所述元素的数据;用于确定要保存的元素的所述配置信息包括保存字段、保存表名和是否入库。本发明实施例表单数据的存取方法及装置,根据配置信息,实现表单数据的存取,表单可以作为一个整体,前后台表单存储代码通用,不仅保证了表单数据完整、一致,并提高表单的可维护性和可扩展性。
文档编号G06F17/30GK102682126SQ201210151929
公开日2012年9月19日 申请日期2012年5月16日 优先权日2012年5月16日
发明者张文星 申请人:深圳市凯立德科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1