1.一种自适应表单的生成方法,包括以下步骤:
(1)创建一个对象表用来存储所有的对象名以及对象对应的对象表的表 名,创建对象属性表用来存储每个对象的属性信息;读取对象表中的所有对 象并持久化;
(2)为每一个对象创建一个与其相对应的数据表,所述的数据表用来存 储该对象数据;对象数据由用户根据需要进行设置,包括对象的表单字段及 各字段的类型;数据表的表名与该对象的对象名一致;
(3)用户发出表单定制申请,根据表单中的对象名查看对象表中是否存 在定制申请所对应的对象,若是则读取该对象数据表中的对象数据并返回给 用户;若否则进入步骤(4);
(4)根据表单中的对象名,创建一个新对象,并设置新对象的属性信息 及类型;所述的属性信息包括新对象的属性id和对象名;
(5)将所述新对象的对象名增加到对象表中,将新对象的属性信息增加 到对象属性表中,并创建一个新的数据表用来存储新对象的对象数据。
2.如权利要求1所述的一种自适应表单生成方法,其特征在于:步骤(4) 中,创建新对象后,用户根据需要设置新对象的查询项及查询时的显示项; 所述的查询项及显示项是在新对象的属性信息中选出的。
3.如权利要求1或2所述的一种自适应表单生成方法,其特征在于:步 骤(1)中,将所建立的对象表和对象属性表保存到数据库,并建立对象与对 象表、以及对象与对象属性表的映射关系。
4.如权利要求3所述的一种自适应表单生成方法,其特征在于:用户申 请查询表单时,在数据库中根据所设置的查询项查询申请对象所对应的对象 数据,并根据所设置的显示项将显示项所对应的数据返回给用户。
5.如权利要求1所述的一种自适应表单生成方法,其特征在于:步骤(5) 中,新对象的数据表的表名与其对象名一致。
6.一种自适应表单的生成系统,包括:
存储模块:用于创建一个对象表用来存储所有的对象名以及对象对应的 对象表的表名,创建对象属性表用于记录每个对象的属性信息,并读取对象 表中的所有对象并持久化;
数据表创建模块:用于为每一个对象创建一个与其相对应的数据表,所 述的数据表用来存储该对象数据;对象数据由用户根据需要进行设置,包括 对象的表单字段及各字段的类型;数据表的表名与该对象的对象名一致;
对象查模块:用于根据用户发出的表单定制申请中的对象名查看对象 表中是否存在定制申请所对应的对象,若是则读取该对象数据表中的对象数 据并返回给用户;若否则进入新对象创建模块;
新对象创建模块:用于根据表单中的对象名,创建一个新对象,并设置 新对象的属性信息及类型;所述的属性信息包括新对象的属性id和对象名;
新对象存储模块:用于将所述新对象的对象名增加到对象表中,将新对 象的属性信息增加到对象属性表中,并创建一个新的数据表用来存储新对象 的对象数据。
7.如权利要求6所述的一种自适应表单的生成系统,其特征在于:该系 统还包括,
映射关系建立模块:用于建立对象与对象表、以及对象与对象属性表的 映射关系。
8.如权利要求7所述的一种自适应表单的生成系统,其特征在于,所述 的对象查模块包括:
对象数据查单元:用于在对象表中存在表单中的对象名时,根据对象 与对象属性表的映射关系查对象属性表的对象数据,并将查的对象数据 返回给用户。
本发明涉及表单生成领域,具体涉及一种自适应表单的生成方法及系统。
随着计算机技术的不断发展,政府和企业中的信息化建设规模变得越来 越大速度也越来越快。在信息化建设的过程中很多业务逻辑不是很强,单一 表单的增、删、改、查的不断重复建设耗费了信息化建设中大量的时间与资 源。目前解决该类问题的最普遍形式有以下几种:
(一)制作一种代码生成工具,每次需要单一表单的定制工作,通过配置 生成一套从数据库到页面的包括各个层的代码,然后将代码加入到系统框架 中经过简单配置即可实现一个应用。
(二)通过反射机制将后台所有的操作制作成通用方法,需要增加一个 应用的时候,只要编写相应的类以及前台表单即可新增一个应用。
(三)传统方式将所有的应用从后台到前台重新写一遍。
(四)设计一种表单能自适应,但是所有的操作都是基于数据库的操作, 不涉及ORM(Object/Relation Mapping,对象映射机制),不能引入反射机制, 代码的编写相对复杂,实现起来不灵活。
针对现有技术中存在的缺陷,本发明的目的在于提供一种自适应表单的 生成方法及系统,通过该方法及系统,用户可以自定义新表单的类型,并可 以设定每个字段的类型、查询列表显示页面以及查询字段。
为实现上述目的,本发明采用的技术方案如下:
一种自适应表单的生成方法,包括以下步骤:
(1)创建一个对象表用来存储所有的对象名以及对象对应的对象表的表 名,创建对象属性表用来存储每个对象的属性信息;读取对象表中的所有对 象并持久化;
(2)为每一个对象创建一个与其相对应的数据表,所述的数据表用来存 储该对象数据;对象数据由用户根据需要进行设置,包括对象的表单字段及 各字段的类型;数据表的表名与该对象的对象名一致;(3)用户发出表单定 制申请,根据表单中的对象名查看对象表中是否存在定制申请所对应的对象, 若是则读取该对象数据表中的对象数据并返回给用户;若否则进入步骤(4);
(4)根据表单中的对象名,创建一个新对象,并设置新对象的属性信息 及类型;所述的属性信息包括新对象的属性id和对象名;
(5)将所述新对象的对象名增加到对象表中,将新对象的属性信息增加 到对象属性表中,并创建一个新的数据表用来存储新对象的对象数据。
进一步,如上所述的一种自适应表单生成方法,步骤(4)中,创建新对 象后,用户根据需要设置新对象的查询项及查询时的显示项;所述的查询项 及显示项是在新对象的属性信息中选出的。
进一步,如上所述的一种自适应表单生成方法,步骤(1)中,将所建立 的对象表和对象属性表保存到数据库,并建立对象与对象表、以及对象与对 象属性表的映射关系。
再进一步,如上所述的一种自适应表单生成方法,用户申请查询表单时, 在数据库中根据所设置的查询项查询申请对象所对应的对象数据,并根据所 设置的显示项将显示项所对应的数据返回给用户。
更进一步,如上所述的一种自适应表单生成方法,步骤(5)中,新对象 的数据表的表名与其对象名一致。
一种自适应表单的生成系统,包括:
存储模块:用于创建一个对象表用来存储所有的对象名以及对象对应的 对象表的表名,创建对象属性表用于记录每个对象的属性信息,并读取对象 表中的所有对象并持久化;
数据表创建模块:用于为每一个对象创建一个与其相对应的数据表,所 述的数据表用来存储该对象数据;对象数据由用户根据需要进行设置,包括 对象的表单字段及各字段的类型;数据表的表名与该对象的对象名一致;
对象查模块:用于根据用户发出的表单定制申请中的对象名查看对象 表中是否存在定制申请所对应的对象,若是则读取该对象数据表中的对象数 据并返回给用户;若否则进入新对象创建模块;
新对象创建模块:用于根据表单中的对象名,创建一个新对象,并设置 新对象的属性信息及类型;所述的属性信息包括新对象的属性id和对象名;
新对象存储模块:用于将所述新对象的对象名增加到对象表中,将新对 象的属性信息增加到对象属性表中,并创建一个新的数据表用来存储新对象 的对象数据。
进一步,如上所述的一种自适应表单的生成系统,该系统还包括,
映射关系建立模块:用于建立对象与对象表、以及对象与对象属性表的 映射关系。
再进一步,如上所述的一种自适应表单的生成系统,所述的对象查模 块包括:
对象数据查单元:用于在对象表中存在表单中的对象名时,根据对象 与对象属性表的映射关系查对象属性表的对象数据,并将查的对象数据 返回给用户。
本发明的有益效果在于:本发明所述的方法及系统能够通过简单的配置 通过界面的操作即可完成传统的通过复杂而又重复的编码工作才能完成的软 件功能开发。基于开发者需要编写的代码比较少,大大增加开发速度,而且 本发明适用于所有的表单情况,任何表单的开发都可以通过本系统的引入而 解决。基于维护者系统不需要额外的配置以及更新维护,维护界面统一功能 强大,系统稳定。基于使用者系统界面风格统一,可以基于自适应表单提出 自己各种不同的需求,以及随着系统的使用引入新的模块本发明都能满足。
图1为本发明一种自适应表单的生成系统的结构框图;
图2为本发明一种自适应表单的生成方法的流程图。
下面结合说明书附图与具体实施方式对本发明做进一步的详细说明。
图1示出了本发明一种自适应表单的生成系统的结构框图,该系统包括 存储模块11、数据表创建模块12、对象查模块13、新对象创建模块14和 新对象存储模块15,其中:
存储模块11用于创建一个对象表用来存储所有的对象名以及对象对应 的对象表的表名,创建对象属性表用于记录每个对象的属性信息,并读取对 象表中的所有对象并持久化;
数据表创建模块12用于为每一个对象创建一个与其相对应的数据表,所 述的数据表用来存储该对象数据;对象数据由用户根据需要进行设置,包括 对象的表单字段及各字段的类型;数据表的表名与该对象的对象名一致;
对象查模块13用于根据用户发出的表单定制申请中的对象名查看对 象表中是否存在定制申请所对应的对象,若是则读取该对象数据表中的对象 数据并返回给用户;若否则进入新对象创建模块;
新对象创建模块14用于根据表单中的对象名,创建一个新对象,并设置 新对象的属性信息及类型;所述的属性信息包括新对象的属性id和对象名;
新对象存储模块15用于将所述新对象的对象名增加到对象表中,将新对 象的属性信息增加到对象属性表中,并创建一个新的数据表用来存储新对象 的对象数据。
此外,该系统还包括用于建立对象与对象表、以及对象与对象属性表的 映射关系的映射关系建立模块;映射关系建立模块将实体类与数据库表自动 建立对象关系映射,而不需要另外去建设配置文件以及注解等,有新类以及 新的数据库表建立起来以后,该装置能够自动将类以及数据库表建立起orm 映射。对象查模块13还包括用于在对象表中存在表单中的对象名时,根据 对象与对象属性表的映射关系查对象属性表的对象数据,并将查的对象 数据返回给用户的对象数据查单元。
图2示出了基于图1中自适应表单生成系统的一种自适应表单的生成方 法的流程图,该方法主要包括以下步骤:
步骤S21:创建对象表存储所有的对象名,创建对象属性表存储每个对 象的属性信息;
创建一个对象表用来存储所有的对象名以及对象对应的对象表的表名, 创建对象属性表用来存储每个对象的属性信息;读取对象表中的所有对象并 持久化;将所建立的对象表和对象属性表保存到数据库,并建立对象与对象 表、以及对象与对象属性表的映射关系。
步骤S22:为不同的对象创建与其相对应的数据表;
为每一个对象创建一个与其相对应的数据表,所述的数据表用来存储该 对象数据;对象数据由用户根据需要进行设置,包括对象的表单字段及各字 段的类型;数据表的表名与该对象的对象名一致。
步骤S23:根据表单定制申请查对象查看;
用户发出表单定制申请,根据表单中的对象名查看对象表中是否存在定 制申请所对应的对象,若是则读取该对象数据表中的对象数据并返回给用户; 若否则进入步骤S24;
步骤S24:创建一个新对象,并设置新对象的属性信息及类型;
根据表单中的对象名,创建一个新对象,并设置新对象的属性信息及类 型;所述的属性信息包括新对象的属性id和对象名;创建新对象后,还包括 用户根据需要设置新对象的查询项及查询时的显示项;所述的查询项及显示 项是由新对象的属性信息中选出的。用户申请查询表单时,在数据库中根据 所设置的查询项查询申请对象所对应的信息并返回。
步骤S25:将新对象的对象名增加到对象表中,将其属性信息增加到对 象属性表中。
将所述新对象的对象名增加到对象表中,将新对象的属性信息增加到对 象属性表中,并创建一个新的数据表用来存储新对象的对象数据。新的数据 表用来记录新对象的表单字段以及各字段类型情况,用户的查询条件以及查 询列表的实现情况依赖于这个表。
本发明所述的方法及系统,用户需要增加内容时,系统根据选择对象自 动调用为用户动态创建表单,系统收到用户提交表单以后通过反射机制自动 创建对象,并通过统一与数据库对接接口将数据保存到数据库中。该方法及 系统在通过软件开发编码实现时,通过实体类(对象名)与具体的表单(对 象表、数据表)进行对象关系映射。用户需要新增一个新的表单的时候,只 要在管理界面中增加实体类的名称以及该类的各种属性,系统会将对象的各 个属性保存到数据库中,并在系统中创建该类。通过该方法及系统用户能够 自定义查询表单的查询界面以及查询界面的字段以及各自段类型,当用户需 要查询的时候就会自动生成一个查询表单,用户可以查询出对应的数据,用 户将前台自动生成的表单自动映射成对象通过反射机制将数据赋予相应的对 象。然后通过统一的数据存储接口通过映射将数据保存到相应的表中。
本发明的效果在于能够通过简单的配置通过界面的操作即可完成传统的 通过复杂而又重复的编码工作才能完成的软件功能开发。基于开发者需要编 写的代码比较少,大大增加开发速度,而且本发明适用于所有的表单情况, 任何表单的开发都可以通过本系统的引入而解决。基于维护者系统不需要额 外的配置以及更新维护,维护界面统一功能强大,系统稳定。基于使用者系 统界面风格统一,可以基于自适应表单提出自己各种不同的需求,以及随着 系统的使用引入新的模块本发明都能满足。
下面结合具体的实施例对本申请进行进一步的说明:
实施例
用户需要管理一类新的物品(书),用户登录到系统以后首先进入表单定制界 面,创建一个新对象book,并指定book的各个属性id、名称、出版社、作者、 出版时间、价格等信息。并设置名称、作者为查询项,设置名称、出版社、作 者、出版时间、价格为列表显示相。点击保存按钮以后,系统会在对象表t1中 增加数据book,并在对象属性表t2中增加book对应的属性(id、名称、出版社、 作者、出版时间、价格等)。创建一个新表book其对应的属性为id、名称、出 版社、作者、出版时间、价格。数据库操作完成以后系统自动刷新,将book添 加到session管理系统之中去。用户从对象新增界面中就能看到书的管理,点击 书新增就能弹出书的新增界面,同时点击查询管理中的图书能够进入查询界面 查询项根据我们的定制可以看到只有名称、作者两项。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本 发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要 求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。
本文发布于:2023-04-14 20:00:30,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/2/86409.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |