《一种自适应表单的生成方法及系统.pdf》由会员分享,可在线阅读,更多相关《一种自适应表单的生成方法及系统.pdf(8页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103853759 A (43)申请公布日 2014.06.11 CN 103853759 A (21)申请号 201210508701.7 (22)申请日 2012.12.03 G06F 17/30(2006.01) (71)申请人 方正国际软件 (北京) 有限公司 地址 100080 北京市海淀区北四环西路 52 号方正国际大厦 5 层 申请人 常州市公安局 (72)发明人 张百春 乐以长 高超 朱军 于文超 于海龙 (74)专利代理机构 北京天悦专利代理事务所 ( 普通合伙 ) 11311 代理人 田明 任晓航 (54) 发明名称 一种自适应表单的生成方法及系统。
2、 (57) 摘要 本发明公开了一种自适应表单的生成方法及 系统, 该方法首先创建一个对象表用来存储所有 的对象名, 创建对象属性表用来存储每个对象的 属性信息, 并根据不同的对象创建与其相对应的 用来存储其相关数据的数据表 ; 在收到用户的表 单定制申请时, 先查看对象表中是否存在与申请 所对应的对象名, 若是则读取数据表中的该对象 的相关数据并返回, 若否则根据表单定制申请, 创 建一个新对象, 并设置新对象的属性信息及类型, 并将新对象的对象名增加到对象表中, 将新对象 的属性信息增加到对象属性表中。通过该方法及 系统, 用户可以自定义新表单的类型, 并可以设定 每个字段的类型、 查询列表。
3、显示页面以及查询字 段。 (51)Int.Cl. 权利要求书 2 页 说明书 4 页 附图 1 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书4页 附图1页 (10)申请公布号 CN 103853759 A CN 103853759 A 1/2 页 2 1. 一种自适应表单的生成方法, 包括以下步骤 : (1) 创建一个对象表用来存储所有的对象名以及对象对应的对象表的表名, 创建对象 属性表用来存储每个对象的属性信息 ; 读取对象表中的所有对象并持久化 ; (2) 为每一个对象创建一个与其相对应的数据表, 所述的数据表用来存储该对象数据 ; 对象数据由用。
4、户根据需要进行设置, 包括对象的表单字段及各字段的类型 ; 数据表的表名 与该对象的对象名一致 ; (3) 用户发出表单定制申请, 根据表单中的对象名查看对象表中是否存在定制申请所 对应的对象, 若是则读取该对象数据表中的对象数据并返回给用户 ; 若否则进入步骤 (4) ; (4) 根据表单中的对象名, 创建一个新对象, 并设置新对象的属性信息及类型 ; 所述的 属性信息包括新对象的属性 id 和对象名 ; (5) 将所述新对象的对象名增加到对象表中, 将新对象的属性信息增加到对象属性表 中, 并创建一个新的数据表用来存储新对象的对象数据。 2. 如权利要求 1 所述的一种自适应表单生成方法,。
5、 其特征在于 : 步骤 (4) 中, 创建新对 象后, 用户根据需要设置新对象的查询项及查询时的显示项 ; 所述的查询项及显示项是在 新对象的属性信息中选出的。 3. 如权利要求 1 或 2 所述的一种自适应表单生成方法, 其特征在于 : 步骤 (1) 中, 将所 建立的对象表和对象属性表保存到数据库, 并建立对象与对象表、 以及对象与对象属性表 的映射关系。 4. 如权利要求 3 所述的一种自适应表单生成方法, 其特征在于 : 用户申请查询表单时, 在数据库中根据所设置的查询项查询申请对象所对应的对象数据, 并根据所设置的显示项 将显示项所对应的数据返回给用户。 5. 如权利要求 1 所述的。
6、一种自适应表单生成方法, 其特征在于 : 步骤 (5) 中, 新对象的 数据表的表名与其对象名一致。 6. 一种自适应表单的生成系统, 包括 : 存储模块 : 用于创建一个对象表用来存储所有的对象名以及对象对应的对象表的表 名, 创建对象属性表用于记录每个对象的属性信息, 并读取对象表中的所有对象并持久 化 ; 数据表创建模块 : 用于为每一个对象创建一个与其相对应的数据表, 所述的数据表用 来存储该对象数据 ; 对象数据由用户根据需要进行设置, 包括对象的表单字段及各字段的 类型 ; 数据表的表名与该对象的对象名一致 ; 对象查找模块 : 用于根据用户发出的表单定制申请中的对象名查看对象表中。
7、是否存在 定制申请所对应的对象, 若是则读取该对象数据表中的对象数据并返回给用户 ; 若否则进 入新对象创建模块 ; 新对象创建模块 : 用于根据表单中的对象名, 创建一个新对象, 并设置新对象的属性信 息及类型 ; 所述的属性信息包括新对象的属性 id 和对象名 ; 新对象存储模块 : 用于将所述新对象的对象名增加到对象表中, 将新对象的属性信息 增加到对象属性表中, 并创建一个新的数据表用来存储新对象的对象数据。 7. 如权利要求 6 所述的一种自适应表单的生成系统, 其特征在于 : 该系统还包括, 映射关系建立模块 : 用于建立对象与对象表、 以及对象与对象属性表的映射关系。 权 利 要。
8、 求 书 CN 103853759 A 2 2/2 页 3 8. 如权利要求 7 所述的一种自适应表单的生成系统, 其特征在于, 所述的对象查找模 块包括 : 对象数据查找单元 : 用于在对象表中存在表单中的对象名时, 根据对象与对象属性表 的映射关系查找对象属性表的对象数据, 并将查找的对象数据返回给用户。 权 利 要 求 书 CN 103853759 A 3 1/4 页 4 一种自适应表单的生成方法及系统 技术领域 0001 本发明涉及表单生成领域, 具体涉及一种自适应表单的生成方法及系统。 背景技术 0002 随着计算机技术的不断发展, 政府和企业中的信息化建设规模变得越来越大速度 也越。
9、来越快。 在信息化建设的过程中很多业务逻辑不是很强, 单一表单的增、 删、 改、 查的不 断重复建设耗费了信息化建设中大量的时间与资源。 目前解决该类问题的最普遍形式有以 下几种 : 0003 ( 一 ) 制作一种代码生成工具, 每次需要单一表单的定制工作, 通过配置生成一套 从数据库到页面的包括各个层的代码, 然后将代码加入到系统框架中经过简单配置即可实 现一个应用。 0004 (二) 通过反射机制将后台所有的操作制作成通用方法, 需要增加一个应用的时 候, 只要编写相应的类以及前台表单即可新增一个应用。 0005 (三) 传统方式将所有的应用从后台到前台重新写一遍。 0006 (四) 设计。
10、一种表单能自适应, 但是所有的操作都是基于数据库的操作, 不涉及 ORM (Object/Relation Mapping, 对象映射机制) , 不能引入反射机制, 代码的编写相对复杂, 实 现起来不灵活。 发明内容 0007 针对现有技术中存在的缺陷, 本发明的目的在于提供一种自适应表单的生成方法 及系统, 通过该方法及系统, 用户可以自定义新表单的类型, 并可以设定每个字段的类型、 查询列表显示页面以及查询字段。 0008 为实现上述目的, 本发明采用的技术方案如下 : 0009 一种自适应表单的生成方法, 包括以下步骤 : 0010 (1) 创建一个对象表用来存储所有的对象名以及对象对应。
11、的对象表的表名, 创建 对象属性表用来存储每个对象的属性信息 ; 读取对象表中的所有对象并持久化 ; 0011 (2) 为每一个对象创建一个与其相对应的数据表, 所述的数据表用来存储该对象 数据 ; 对象数据由用户根据需要进行设置, 包括对象的表单字段及各字段的类型 ; 数据表 的表名与该对象的对象名一致 ;(3) 用户发出表单定制申请, 根据表单中的对象名查看对 象表中是否存在定制申请所对应的对象, 若是则读取该对象数据表中的对象数据并返回给 用户 ; 若否则进入步骤 (4) ; 0012 (4) 根据表单中的对象名, 创建一个新对象, 并设置新对象的属性信息及类型 ; 所 述的属性信息包括。
12、新对象的属性 id 和对象名 ; 0013 (5) 将所述新对象的对象名增加到对象表中, 将新对象的属性信息增加到对象属 性表中, 并创建一个新的数据表用来存储新对象的对象数据。 0014 进一步, 如上所述的一种自适应表单生成方法, 步骤 (4) 中, 创建新对象后, 用户根 说 明 书 CN 103853759 A 4 2/4 页 5 据需要设置新对象的查询项及查询时的显示项 ; 所述的查询项及显示项是在新对象的属性 信息中选出的。 0015 进一步, 如上所述的一种自适应表单生成方法, 步骤 (1) 中, 将所建立的对象表和 对象属性表保存到数据库, 并建立对象与对象表、 以及对象与对象。
13、属性表的映射关系。 0016 再进一步, 如上所述的一种自适应表单生成方法, 用户申请查询表单时, 在数据库 中根据所设置的查询项查询申请对象所对应的对象数据, 并根据所设置的显示项将显示项 所对应的数据返回给用户。 0017 更进一步, 如上所述的一种自适应表单生成方法, 步骤 (5) 中, 新对象的数据表的 表名与其对象名一致。 0018 一种自适应表单的生成系统, 包括 : 0019 存储模块 : 用于创建一个对象表用来存储所有的对象名以及对象对应的对象表的 表名, 创建对象属性表用于记录每个对象的属性信息, 并读取对象表中的所有对象并持久 化 ; 0020 数据表创建模块 : 用于为每。
14、一个对象创建一个与其相对应的数据表, 所述的数据 表用来存储该对象数据 ; 对象数据由用户根据需要进行设置, 包括对象的表单字段及各字 段的类型 ; 数据表的表名与该对象的对象名一致 ; 0021 对象查找模块 : 用于根据用户发出的表单定制申请中的对象名查看对象表中是否 存在定制申请所对应的对象, 若是则读取该对象数据表中的对象数据并返回给用户 ; 若否 则进入新对象创建模块 ; 0022 新对象创建模块 : 用于根据表单中的对象名, 创建一个新对象, 并设置新对象的属 性信息及类型 ; 所述的属性信息包括新对象的属性 id 和对象名 ; 0023 新对象存储模块 : 用于将所述新对象的对象。
15、名增加到对象表中, 将新对象的属性 信息增加到对象属性表中, 并创建一个新的数据表用来存储新对象的对象数据。 0024 进一步, 如上所述的一种自适应表单的生成系统, 该系统还包括, 0025 映射关系建立模块 : 用于建立对象与对象表、 以及对象与对象属性表的映射关系。 0026 再进一步, 如上所述的一种自适应表单的生成系统, 所述的对象查找模块包括 : 0027 对象数据查找单元 : 用于在对象表中存在表单中的对象名时, 根据对象与对象属 性表的映射关系查找对象属性表的对象数据, 并将查找的对象数据返回给用户。 0028 本发明的有益效果在于 : 本发明所述的方法及系统能够通过简单的配置。
16、通过界面 的操作即可完成传统的通过复杂而又重复的编码工作才能完成的软件功能开发。 基于开发 者需要编写的代码比较少, 大大增加开发速度, 而且本发明适用于所有的表单情况, 任何表 单的开发都可以通过本系统的引入而解决。 基于维护者系统不需要额外的配置以及更新维 护, 维护界面统一功能强大, 系统稳定。基于使用者系统界面风格统一, 可以基于自适应表 单提出自己各种不同的需求, 以及随着系统的使用引入新的模块本发明都能满足。 附图说明 0029 图 1 为本发明一种自适应表单的生成系统的结构框图 ; 0030 图 2 为本发明一种自适应表单的生成方法的流程图。 说 明 书 CN 103853759。
17、 A 5 3/4 页 6 具体实施方式 0031 下面结合说明书附图与具体实施方式对本发明做进一步的详细说明。 0032 图 1 示出了本发明一种自适应表单的生成系统的结构框图, 该系统包括存储模块 11、 数据表创建模块 12、 对象查找模块 13、 新对象创建模块 14 和新对象存储模块 15, 其中 : 0033 存储模块 11 用于创建一个对象表用来存储所有的对象名以及对象对应的对象表 的表名, 创建对象属性表用于记录每个对象的属性信息, 并读取对象表中的所有对象并持 久化 ; 0034 数据表创建模块 12 用于为每一个对象创建一个与其相对应的数据表, 所述的数 据表用来存储该对象数。
18、据 ; 对象数据由用户根据需要进行设置, 包括对象的表单字段及各 字段的类型 ; 数据表的表名与该对象的对象名一致 ; 0035 对象查找模块 13 用于根据用户发出的表单定制申请中的对象名查看对象表中是 否存在定制申请所对应的对象, 若是则读取该对象数据表中的对象数据并返回给用户 ; 若 否则进入新对象创建模块 ; 0036 新对象创建模块 14 用于根据表单中的对象名, 创建一个新对象, 并设置新对象的 属性信息及类型 ; 所述的属性信息包括新对象的属性 id 和对象名 ; 0037 新对象存储模块 15 用于将所述新对象的对象名增加到对象表中, 将新对象的属 性信息增加到对象属性表中, 。
19、并创建一个新的数据表用来存储新对象的对象数据。 0038 此外, 该系统还包括用于建立对象与对象表、 以及对象与对象属性表的映射关系 的映射关系建立模块 ; 映射关系建立模块将实体类与数据库表自动建立对象关系映射, 而 不需要另外去建设配置文件以及注解等, 有新类以及新的数据库表建立起来以后, 该装置 能够自动将类以及数据库表建立起 orm 映射。对象查找模块 13 还包括用于在对象表中存 在表单中的对象名时, 根据对象与对象属性表的映射关系查找对象属性表的对象数据, 并 将查找的对象数据返回给用户的对象数据查找单元。 0039 图2示出了基于图1中自适应表单生成系统的一种自适应表单的生成方法。
20、的流程 图, 该方法主要包括以下步骤 : 0040 步骤 S21 : 创建对象表存储所有的对象名, 创建对象属性表存储每个对象的属性 信息 ; 0041 创建一个对象表用来存储所有的对象名以及对象对应的对象表的表名, 创建对象 属性表用来存储每个对象的属性信息 ; 读取对象表中的所有对象并持久化 ; 将所建立的对 象表和对象属性表保存到数据库, 并建立对象与对象表、 以及对象与对象属性表的映射关 系。 0042 步骤 S22 : 为不同的对象创建与其相对应的数据表 ; 0043 为每一个对象创建一个与其相对应的数据表, 所述的数据表用来存储该对象数 据 ; 对象数据由用户根据需要进行设置, 包。
21、括对象的表单字段及各字段的类型 ; 数据表的 表名与该对象的对象名一致。 0044 步骤 S23 : 根据表单定制申请查找对象查看 ; 0045 用户发出表单定制申请, 根据表单中的对象名查看对象表中是否存在定制申请所 对应的对象, 若是则读取该对象数据表中的对象数据并返回给用户 ; 若否则进入步骤 S24 ; 0046 步骤 S24 : 创建一个新对象, 并设置新对象的属性信息及类型 ; 说 明 书 CN 103853759 A 6 4/4 页 7 0047 根据表单中的对象名, 创建一个新对象, 并设置新对象的属性信息及类型 ; 所述的 属性信息包括新对象的属性 id 和对象名 ; 创建新。
22、对象后, 还包括用户根据需要设置新对象 的查询项及查询时的显示项 ; 所述的查询项及显示项是由新对象的属性信息中选出的。用 户申请查询表单时, 在数据库中根据所设置的查询项查询申请对象所对应的信息并返回。 0048 步骤 S25 : 将新对象的对象名增加到对象表中, 将其属性信息增加到对象属性表 中。 0049 将所述新对象的对象名增加到对象表中, 将新对象的属性信息增加到对象属性表 中, 并创建一个新的数据表用来存储新对象的对象数据。新的数据表用来记录新对象的表 单字段以及各字段类型情况, 用户的查询条件以及查询列表的实现情况依赖于这个表。 0050 本发明所述的方法及系统, 用户需要增加内。
23、容时, 系统根据选择对象自动调用为 用户动态创建表单, 系统收到用户提交表单以后通过反射机制自动创建对象, 并通过统一 与数据库对接接口将数据保存到数据库中。该方法及系统在通过软件开发编码实现时, 通 过实体类 (对象名) 与具体的表单 (对象表、 数据表) 进行对象关系映射。用户需要新增一个 新的表单的时候, 只要在管理界面中增加实体类的名称以及该类的各种属性, 系统会将对 象的各个属性保存到数据库中, 并在系统中创建该类。通过该方法及系统用户能够自定义 查询表单的查询界面以及查询界面的字段以及各自段类型, 当用户需要查询的时候就会自 动生成一个查询表单, 用户可以查询出对应的数据, 用户将。
24、前台自动生成的表单自动映射 成对象通过反射机制将数据赋予相应的对象。 然后通过统一的数据存储接口通过映射将数 据保存到相应的表中。 0051 本发明的效果在于能够通过简单的配置通过界面的操作即可完成传统的通过复 杂而又重复的编码工作才能完成的软件功能开发。基于开发者需要编写的代码比较少, 大 大增加开发速度, 而且本发明适用于所有的表单情况, 任何表单的开发都可以通过本系统 的引入而解决。 基于维护者系统不需要额外的配置以及更新维护, 维护界面统一功能强大, 系统稳定。 基于使用者系统界面风格统一, 可以基于自适应表单提出自己各种不同的需求, 以及随着系统的使用引入新的模块本发明都能满足。 0。
25、052 下面结合具体的实施例对本申请进行进一步的说明 : 0053 实施例 0054 用户需要管理一类新的物品 ( 书 ), 用户登录到系统以后首先进入表单定制界面, 创建一个新对象book, 并指定book的各个属性id、 名称、 出版社、 作者、 出版时间、 价格等信 息。并设置名称、 作者为查询项, 设置名称、 出版社、 作者、 出版时间、 价格为列表显示相。点 击保存按钮以后, 系统会在对象表 t1 中增加数据 book, 并在对象属性表 t2 中增加 book 对 应的属性 (id、 名称、 出版社、 作者、 出版时间、 价格等) 。 创建一个新表book其对应的属性为 id、 名称。
26、、 出版社、 作者、 出版时间、 价格。数据库操作完成以后系统自动刷新, 将 book 添加 到 session 管理系统之中去。用户从对象新增界面中就能看到书的管理, 点击书新增就能 弹出书的新增界面, 同时点击查询管理中的图书能够进入查询界面查询项根据我们的定制 可以看到只有名称、 作者两项。 0055 显然, 本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样, 倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围 之内, 则本发明也意图包含这些改动和变型在内。 说 明 书 CN 103853759 A 7 1/1 页 8 图 1 图 2 说 明 书 附 图 CN 103853759 A 8 。