CN114064611B - 一种元数据可复用的数据建模方法及系统 - Google Patents
一种元数据可复用的数据建模方法及系统 Download PDFInfo
- Publication number
- CN114064611B CN114064611B CN202111369011.3A CN202111369011A CN114064611B CN 114064611 B CN114064611 B CN 114064611B CN 202111369011 A CN202111369011 A CN 202111369011A CN 114064611 B CN114064611 B CN 114064611B
- Authority
- CN
- China
- Prior art keywords
- metadata
- component
- data
- original data
- metadata set
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000012545 processing Methods 0.000 claims description 58
- 230000008676 import Effects 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 8
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 230000008520 organization Effects 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 5
- 238000012795 verification Methods 0.000 claims description 2
- 238000011161 development Methods 0.000 abstract description 37
- 230000008569 process Effects 0.000 description 19
- 230000000007 visual effect Effects 0.000 description 10
- 238000009877 rendering Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 238000013524 data verification Methods 0.000 description 4
- 230000003247 decreasing effect Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
- G06F16/212—Schema design and management with details for data modelling support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种元数据可复用的数据建模方法及系统,首先获取多个类别的原始数据,其中,每种原始数据至少包括有多个元数据;根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组,包括:能够进行复用的一个或多个基础元数据组、不能进行复用的一个或多个专有元数据组;再对基础元数据组和专有元数据组进行组件配置;并基于组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;最后根据所有类别的原始数据定义生成数据库表,完成数据建模。本发明通过有效复用元数据配置实现快速数据建模并减少数据库表冗余,根据元数据配置和数据建模,自动生成数据应用的界面和相关功能,提高开发效率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种元数据可复用的数据建模方法及系统。
背景技术
通常一种原始数据会由多个不同类别的元数据组成,并且不同的数据间既存在相同的元数据,又存在不同元数据的情况。但是,在对原始数据建模时,目前的原始数据建模和原始数据应用的实现方式中,通常需要开发人员根据元数据的类别,为每一种原始数据定制开发相关的数据库表、表单页面以及数据存取接口等,导致不同的原始数据之间的相同元数据无法进行复用,从而造成代码冗余,开发效率低,不便于业务扩展和快速响应多变的业务需求。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种元数据可复用的数据建模方法及系统,用于解决现有技术中不同原始数据之间相同元数据无法复用的问题。
为实现上述目的及其他相关目的,本发明提供一种元数据可复用的数据建模方法,所述方法包括以下步骤:
获取多个类别的原始数据,每种原始数据至少包括有多个元数据;
根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,所述元数据特性至少包括:元数据可复用性;每种原始数据对应的多个元数据组至少包括:能够进行复用的基础元数据组、不能进行复用的专有元数据组;
对所述基础元数据组和所述专有元数据组进行组件配置;
基于组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;
根据所有类别的原始数据定义生成数据库表,完成数据建模。
可选地,所述方法还包括:
从所述基础元数据组确定出能够关联其他元数据组的一个元数据组,记为主元数据组;
将除所述主元数据组外的其他元数据组组合后形成的新元数据组记为第一元数据组;
将所述主元数据组加入至所述第一元数据组中,记为第二元数据组;
对所述第二元数据组中的所有元数据组进行排序,生成每个类别的原始数据定义。
可选地,所述方法还包括:
获取待分组原始数据;
利用所述基础元数据组来对所述待分组原始数据中的元数据进行分组;
若对所述待分组原始数据进行分组时,所述待分组原始数据中还存在至少一个元数据不能被分进所述基础元数据组中,则将所述至少一个元数据分组至专有元数据组。
可选地,所述对所述基础元数据组或所述专有元数据组进行组件配置的过程包括:
获取所述基础元数据组或所述专有元数据组的配置界面;
在所述配置界面中的预设组件显示区域中选择目标组件,并对所选择的目标组件进行拖拽形成页面布局;所述预设组件以下至少之一:基础组件、布局组件和动态组件;
对进行页面布局后的组件进行参数设置,并在完成参数设置后,保存当前参数设置,完成对所述基础元数据组或所述专有元数据组的组件配置;所述参数包括:组件参数和表单参数。
可选地,所述基础组件包括:输入框组件、计数器组件、密码框组件、文本域组件、单选框组件、复选框组件、日期选框组件、时间选框组件、评分组件、开关组件、提示框组件、颜色选择器组件、图标组件、头像组件和富文本框组件;
所述布局组件包括:分割线组件、栅格布局组件、卡片布局组件和标签页布局组件;
所述动态组件包括:流水号组件、组织选择器组件、角色选择器组件、人员选择器组件、下拉选择器组件、级联选择器组件、树选择器组件、滑动输入条组件、上传文件组件、上传图片组件和动态表格组件。
可选地,所述预设组件中的组件参数包括:标签名称、数据字段、大小、宽度、样式、提示内容、默认值、状态、校验规则、数据来源;
其中,所述数据字段为生成数据库表时的字段名称;所述状态包括:可编辑、只读、隐藏;所述校验规则包括:非空校验、正则表达式校验、动态函数校验;所述数据来源包括:静态数据、数据字典、动态方法获取;
所述表单参数包括:表单布局方式、标签布局方式、标签宽度、权限设置和唯一键设置;
其中,所述权限设置用于设置组件新建、编辑、查看时的权限;所述唯一键设置用于设置一个或多个唯一键,以及选择一个组件或多个组件组合为唯一键。
可选地,在根据所有类别的原始数据定义生成数据库表时,还包括:
遍历所有原始数据定义中的元数据组,并判断这些元数据组是否生成数据库表;
如果未生成数据库表,则根据所述元数据组的组件配置在数据库中生成数据库表,且在所述主元数据组所对应的主元数据库表中创建唯一标识字段,以及在所述第一元数据组所对应的元数据库表中创建关联字段;所述数据库包括:Oracle、MySql、SqlServer;
如果已生成数据库表,则直接复用已生成的数据库表。
可选地,在生成所述数据库表后,还包括:生成表单应用和/或表格应用;
所述表单应用用于对单条数据进行处理,包括:查看数据详情处理、新建数据处理和编辑数据处理;
所述表格应用用于对多条数据进行展示和处理,包括:动态获取数据展示和处理、表格配置展示和处理、翻页展示和处理、排序展示和处理、筛选展示和处理、批量删除处理、查询展示和处理、导出展示和处理和导入展示和处理。
本发明还提供一种元数据可复用的数据建模系统,所述系统包括有:
数据采集模块,用于获取多个类别的原始数据,每种原始数据至少包括有多个元数据;
第一分组模块,用于根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,所述元数据特性至少包括:元数据可复用性;每种原始数据对应的多个元数据组至少包括:能够进行复用的基础元数据组、不能进行复用的专有元数据组;
组件配置模块,用于对所述基础元数据组和所述专有元数据组进行组件配置;
第一组合排序模块,用于对完成组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;
数据建模模块,用于根据所有类别的原始数据定义生成数据库表,完成数据建模。
可选地,所述系统还包括:
主元数据组模块,用于从所述基础元数据组确定出能够关联其他元数据组的一个元数据组,记为主元数据组;
第二分组模块,用于将除所述主元数据组外的其他元数据组组合后形成的新元数据组记为第一元数据组,以及将所述主元数据组加入至所述第一元数据组中,记为第二元数据组;
第二组合排序模块,用于对所述第二元数据组中的所有元数据组进行排序,生成每个类别的原始数据定义。
如上所述,本发明提供一种元数据可复用的数据建模方法及系统,具有以下有益效果:本发明首先获取多个类别的原始数据,其中每种原始数据至少包括有多个元数据;根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,元数据特性至少包括:元数据可复用性;每种原始数据对应的多个元数据组至少包括:能够进行复用的基础元数据组、不能进行复用的专有元数据组;再对基础元数据组和所述专有元数据组进行组件配置;并基于组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;最后根据所有类别的原始数据定义生成数据库表,完成数据建模。业务开发人员在对待分组原始数据进行元数据分组时,可以直接对待分组原始数据中的元数据按照基础元数据组和专有元数据组进行分组。由此可知,通过本发明,无需每次都要专业技术人员进行干预,只需要业务人员根据实际业务需求,将元数据分为不同的组,通过拖拽组件等常规化操作零代码的快速完成元数据配置,再组合新配置的元数据组或者直接复用已有元数据组完成数据定义。本发明根据数据定义中元数据组件特征和组合关系完成数据建模,自动生成数据库表和数据应用,实现数据列表展示、新建、编辑、删除、查询等功能。本发明为开发者屏蔽了数据库建模过程,可快速的针对需求的变化做出相应的调整,使开发过程更直观更高效,避免了数据库表、表单页面以及数据存取接口重复开发,提升了代码的可复用性,降低了开发复杂度和开发门槛。所以,本发明提供了丰富的组件实现可视化元数据配置,通过有效复用元数据配置实现快速数据建模并减少数据库表冗余,根据元数据配置和数据建模,自动生成数据应用的界面和相关功能,提高开发效率。
附图说明
图1为一实施例提供的元数据可复用的数据建模方法的流程示意图;
图2为另一实施例提供的元数据可复用的数据建模方法的流程示意图;
图3为一实施例提供的元数据可复用的数据建模系统的硬件结构示意图;
图4为另一实施例提供的元数据可复用的数据建模系统的硬件结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
请参阅图1所示,本实施例提供一种元数据可复用的数据建模方法,所述方法包括以下步骤:
S100,获取多个类别的原始数据,每种原始数据包括但不限于有多个元数据;
S200,根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,所述元数据特性包括但不限于:元数据可复用性;每种原始数据对应的多个元数据组包括但不限于:能够进行复用的一个或多个基础元数据组、不能进行复用的一个或多个专有元数据组;
S300,对所述基础元数据组和所述专有元数据组进行组件配置;
S400,基于组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;
S500,根据所有类别的原始数据定义生成数据库表,完成数据建模。
由此可知,业务开发人员在对待分组原始数据进行元数据分组时,可以直接对待分组原始数据中的元数据按照基础元数据组和专有元数据组进行分组。通过本实施例,无需每次都要专业技术人员进行干预,只需要业务人员根据实际业务需求,将元数据分为不同的组,通过拖拽组件等常规化操作零代码的快速完成元数据配置,再组合新配置的元数据组或者直接复用已有元数据组完成数据定义。本实施例根据数据定义中元数据组件特征和组合关系完成数据建模,自动生成数据库表和数据应用,实现数据列表展示、新建、编辑、删除、查询等功能。本实施例为开发者屏蔽了数据库建模过程,可快速的针对需求的变化做出相应的调整,使开发过程更直观更高效,避免了数据库表、表单页面以及数据存取接口重复开发,提升了代码的可复用性,降低了开发复杂度和开发门槛。所以,本实施例提供了丰富的组件实现可视化元数据配置,通过有效复用元数据配置实现快速数据建模并减少数据库表冗余,根据元数据配置和数据建模,自动生成数据应用的界面和相关功能,提高开发效率。
在一示例性实施例中,本方法还包括:从所述基础元数据组确定出能够关联其他元数据组的一个元数据组,记为主元数据组;将除所述主元数据组外的其他元数据组组合后形成的新元数据组记为第一元数据组;将所述主元数据组加入至所述第一元数据组中,记为第二元数据组;对所述第二元数据组中的所有元数据组进行排序,生成每个类别的原始数据定义。作为示例,对于专利权证书原始数据和软件著作权证书原始数据而言,这两种原始数据存在的相同元数据有名称、编号、权利人等,不同的元数据有:专利类型、授权日期、版本号、开发完成日期等。所以,本实施例可以将相同的元数据名称、编号、权利人划分为基础元数据组,并将基础元数据组定义为主元数据组,将专利类型、授权日期划分为专利专有元数据组,将版本号、开发完成日期划分为软件著作权专有元数据组。其中,基础元数据组可以被专利权证书原始数据和软件著作权证书原始数据复用,所以本实施例只需要将专利权证书原始数据和软件著作权证书原始数据分为基础元数据组、专利专有元数据组和软件著作权专有元数据组即可,即分为三个元数据组。本实施例在生成原始数据定义时,用户可以根据实际的建模数据选择匹配的元数据组进行组合,必须选择且仅选择一个主元数据组,然后对元数据组进行排序。例如对于专利权证书原始数据和软件著作权证书原始数据而言,在完成对基础元数据组、专利专有元数据组和软件著作权专有元数据组的配置后,选择基础元数据组、专利专有元数据组组合完成专利权证书原始数据定义,选择基础元数据组、软件著作权专有元数据组组合完成软件著作权证书原始数据定义。其中,基础元数据组因为其能够被两种原始数据进行复用,所以本实施例将其作为原始数据的主元数据组。
在一示例性实施例中,本方法还包括:获取待分组原始数据;利用所述基础元数据组来对所述待分组原始数据中的元数据进行分组;若对所述待分组原始数据进行分组时,所述待分组原始数据中还存在至少一个元数据不能被分进所述基础元数据组中,则将所述至少一个元数据分组至专有元数据组。本实施例可以将数据建模后形成的模型称为元数据组分组模型。作为示例,本实施例还包括判断当前时刻的专有元数据组与所述元数据分组模型中的专有元数据组是否相同,若不相同,则根据当前时间的专有元数据组与所述基础元数据组进行组合和排序,建立新的元数据组分组模型。作为示例,若元数据分组模型是基于专利权证书原始数据和软件著作权证书原始数据生成的,则在待分组原始数据为商标权证书原始数据时,目前的元数据分组模型在对商标权证书原始数据进行元数据分组时,还会存在商标图案、商品服务等剩余的元数据,则本实施例可以将商标图案、商品服务进行组合,作为当前时刻的专有元数据组,也可以分别将商标图案作为一个专有元数据组,将商品服务作为一个专有元数据组。由于目前的元数据分组模型不能对商标图案、商品服务进行元数据分组,所以本实施例还可以再建立一个新的元数据分组模型,用于对当前及后续的商标证书原始数据进行元数据分组。
在一示例性实施例中,对所述基础元数据组或所述专有元数据组进行组件配置的过程包括:获取所述基础元数据组或所述专有元数据组的配置界面;在所述配置界面中的预设组件显示区域中选择目标组件,并对所选择的目标组件进行拖拽形成页面布局;所述预设组件以下至少之一:基础组件、布局组件和动态组件;对进行页面布局后的组件进行参数设置,并在完成参数设置后,保存当前参数设置,完成对所述基础元数据组或所述专有元数据组的组件配置。在本实施例中,元数据组配置界面由组件区、编辑区、参数区、操作区四部分组成,根据实际的需要还可以增加其他区域,如增加组件嵌套关系展示区等。
其中,组件区用于显示组件库中的组件,组件库预先提供了多种组件,包括基础组件、布局组件和动态组件。作为示例,基础组件包括但不限于:输入框组件、计数器组件、密码框组件、文本域组件、单选框组件、复选框组件、日期选框组件、时间选框组件、评分组件、开关组件、提示框组件、颜色选择器组件、图标组件、头像组件和富文本框组件;布局组件包括但不限于:分割线组件、栅格布局组件、卡片布局组件和标签页布局组件;动态组件包括但不限于:流水号组件、组织选择器组件、角色选择器组件、人员选择器组件、下拉选择器组件、级联选择器组件、树选择器组件、滑动输入条组件、上传文件组件、上传图片组件和动态表格组件。本实施例中的组件数量可以根据业务的实际需求进行相应的增减,本实施例在此并不做具体的数量限定。编辑区用于执行用户对组件的选择和拖拽,对已选组件进行页面布局;在编辑区可以对组件进行删除和复制,使用复制的方式可以进行快速的组件选择和参数配置。参数区用于设置表单和组件的参数,在本实施例中,多个组件形成一个表单。表单参数主要包括表单布局方式、标签布局方式、标签宽度、权限设置和唯一键设置,其中权限设置可以分别设置组件新建、编辑、查看时的权限,表单的唯一键可以设置一个或多个,并且可以选择一个元数据或多个元数据组合为唯一键。每种组件都有特定的参数,系统根据组件定义,在参数区中动态渲染组件的属性参数,包括:标签名称、数据字段、大小、宽度、样式、提示内容、默认值、状态、校验规则、数据来源等,其中数据字段即为生成数据库表时的字段名称,状态包括:可编辑、只读、隐藏,校验规则包括:非空校验、正则表达式校验、动态函数校验等。如果组件为动态组件,还可以在参数区设置数据来源,数据来源包括:静态数据、数据字典、动态方法获取等。默认值、校验规则、数据来源都可以根据业务的实际需求进行相应的增加和修改,在此并不做具体的限定。当表单或组件的参数发生变化时,在编辑区实时监听并自动重新渲染组件样式,达到所见即所得,参数配置与展示效果实时同步。操作区用于展示操作按钮,操作按钮包括:保存、预览、查看JSON数据、清空、撤销、重做。
在一示例性实施例中,在根据所有类别的原始数据定义生成数据库表时,还包括:遍历所有原始数据定义中的元数据组,并判断这些元数据组是否生成数据库表;如果未生成数据库表,则根据所述元数据组的组件配置在数据库中生成数据库表,且在所述主元数据组所对应的主元数据库表中创建唯一标识字段,以及在所述第一元数据组所对应的元数据库表中创建关联字段;所述数据库包括但不限于:Oracle、MySql、SqlServer;如果已生成数据库表,则直接复用已生成的数据库表。在本实施例中,复用的元数据组不再生成数据库表,即一些实施例中的基础元数据组不在生成数据库表。作为示例,比如发布专利权证书原始数据定义时,在数据库中分别生成基础元数据库表和专利专有元数据库表,在基础元数据库表中自动创建唯一标识字段,在专利专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现主元数据库表与其他元数据库表的关联。发布软件著作权证书原始数据定义时,由于基础元数据组已生成数据库表,所以只需生成软件著作权专有元数据库表,同样的,在软件著作权专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现与基础元数据库表的关联。生成数据库表时,自动根据元数据对应的组件类型生成表字段。对于基础组件和动态组件,在本实施例中预设了组件类型和字段类型的对应关系,比如输入框对应字符串类型、计数器对应数值类型、日期选框对应日期类型、富文本框对应长文本类型等;当选择了动态表格组件时,需要根据参数自动在数据库中生成子表,并创建字段与当前元数据库表关联。布局组件主要用于让基础组件和动态组件在表单应用中有更好的展示效果,布局组件不会生成表字段。本实施例生成数据库表时,可以自动根据唯一键设置创建表的索引。本实施例在生成数据库表时,通过适配Oracle、MySql、SqlServer等数据库,可以进一步的减少开发过程的工作量。
在一示例性实施例中,在生成所述数据库表后,还包括:生成表单应用和/或表格应用,这些应用可以由预先实现的通用接口完成。所述表单应用用于对单条数据进行处理,包括:查看数据详情处理、新建数据处理和编辑数据处理;在表单应用中,可以选择是用折叠面板或者标签页进行渲染,每个元数据组根据组件配置时的组件布局和参数渲染为折叠面板或者标签页中的内容,折叠面板或者标签页的数量和显示顺序根据生成数据定义时元数据组的组合和排序确定。所述表格应用用于对多条数据进行展示和处理,包括:动态获取数据展示和处理、表格配置展示和处理、翻页展示和处理、排序展示和处理、筛选展示和处理、批量删除处理、查询展示和处理、导出展示和处理和导入展示和处理。
在表格应用中,根据数据库表关联关系动态生成获取数据sql语句,对于字典类元数据,本实施例中提供转化器模块,将编码转化为标签进行展示。表格配置功能是在表格配置对话框中根据生成的数据定义列示当前数据的所有元数据,可以勾选需要在表格中显示的元数据,并设定显示顺序、列宽、视图模式、每页数量、是否显示序号、是否显示复选框等,其中视图模式包括:表格视图、缩略图视图、卡片视图。每个用户可以保存自己的表格配置,下次进入表格应用时自动按表格配置进行渲染。在表格的表头上可以对任一元数据列进行排序,如果元数据对应的组件类型为选择器,则还可以对该元数据列进行筛选。在查询对话框中,根据组件配置步骤中元数据配置时的组件类型自动确定查询组件类型,比如元数据组件为下拉选择器,对应查询组件类型为多选选择器;元数据组件为日期选框,对应查询组件类型为日期范围选框等。并根据当前表格配置将查询组件分别放入常用条件栏和其他条件栏中,在表格中显示的元数据所对应的查询组件放入常用条件栏,隐藏的元数据所对应的查询组件放入其他条件栏,其他条件栏默认折叠。查询时根据数据库表关联关系动态生成查询sql语句。导出功能是将查询到的所有数据导出为Excel文件。导入功能包括导入模板生成、导入数据校验、导入数据新建或更新。根据生成的数据定义动态生成导入模板,按照模版提供的数据格式以及说明提供数据。在导入时自动将导入数据加载到前端页面中,根据组件配置步骤中元数据配置的校验规则自动对数据进行校验并将提示显示到对应数据行。提交前需要选择提交设置,当选择“唯一字段重复时跳过”时,则重复的数据都不存入数据库;当选择“唯一字段重复时更新”,则根据唯一字段更新数据库中数据。提交完成后将每一行数据的导入结果都显示到前端页面中。
在另一实施例,如图2所示,本实施例提供一种元数据可复用的数据建模方法,包括以下步骤:
步骤1:用户根据实际的建模数据将元数据划分为不同的元数据组,并定义主元数据组。具体地,根据元数据的特性将元数据划分为不同的组并定义主元数据组,元数据的特性包括但不限于元数据的可复用性。比如专利权证书原始数据和软件著作权证书原始数据,可以将相同的元数据名称、编号、权利人划分为基础元数据组并定义为主元数据组,将专利类型、授权日期划分为专利专有元数据组,将版本号、开发完成日期划分为软件著作权专有元数据组。其中,基础元数据组可以被专利权证书原始数据和软件著作权证书原始数据复用,所以在元数据组管理模块中只需创建基础元数据组、专利专有元数据组和软件著作权专有元数据组三个元数据组。
步骤2:判断划分出的元数据组是否已完成组件配置。若未完成组件配置,则进入步骤3,若已完成组件配置,则进入步骤4。
步骤3:选择步骤1中新创建的元数据组,通过拖拽完成元数据配置。其中,元数据组配置界面由组件区、编辑区、参数区、操作区四部分组成,根据实际的需要还可以增加其他区域,如组件嵌套关系展示区等。组件区用于显示组件库中的组件,组件库提供了基础组件、布局组件和动态组件,比如输入框、计数器、单选框、复选框、日期选框、富文本框、卡片布局、标签页布局、流水号、组织选择器、级联选择器、树选择器、动态表格等组件,组件的数量可以根据业务的实际需求进行相应的增减,在此并不做具体的限定。编辑区用于执行用户对组件的选择和拖拽,对已选组件进行页面布局。在编辑区可以对组件进行删除和复制,使用复制的方式可以进行快速的组件选择和参数配置。参数区用于设置表单和组件的参数。表单参数主要包括表单布局方式、标签布局方式、标签宽度和唯一键设置,其中表单的唯一键可以设置一个或多个,并且可以选择一个元数据或多个元数据组合为唯一键。每种组件都有特定的参数,系统根据组件定义,在参数区中动态渲染组件的属性参数,包括:标签名称、数据字段、大小、宽度、样式、提示内容、默认值、状态、校验规则、数据来源等,其中数据字段即为生成数据库表时的字段名称,状态包括:可编辑、只读、隐藏,校验规则包括:非空校验、正则表达式校验、动态函数校验等。如果组件为动态组件,还可以在参数区设置数据来源,数据来源包括:静态数据、数据字典、动态方法获取等。默认值、校验规则、数据来源都可以根据业务的实际需求进行相应的增加和修改,在此并不做具体的限定。当表单或组件的参数发生变化时,在编辑区实时监听并自动重新渲染组件样式,达到所见即所得,参数配置与展示效果实时同步。操作区用于展示操作按钮,操作按钮包括:保存、预览、查看JSON数据、清空、撤销、重做。以步骤1中创建的基础元数据组为例,基础元数据中包括名称、编号、权利人3个元数据。进入基础元数据组配置界面后,通过从组件区中拖拽组件到编辑区进行规划布局,其中名称、编号使用输入框组件,权利人使用人员选择器组件。组件拖拽到编辑区后在参数区设置组件参数,比如设置名称、编号的校验规则为必填,设置权利人的选择类型为多选。完成布局和参数设置后,点击预览按钮可以查看到该元数据组在表单应用中的展示效果,点击保存按钮保存元数据配置。
步骤4:选择元数据组进行组合和排序,形成数据定义。具体地,用户根据实际的建模数据选择匹配的元数据组进行组合,必须选择且仅选择一个主元数据组,并对元数据组进行排序。比如专利权证书原始数据和软件著作权证书原始数据,按步骤3描述完成对基础元数据组、专利专有元数据组和软件著作权专有元数据组的配置后,选择基础元数据组、专利专有元数据组组合完成专利权证书原始数据定义,选择基础元数据组、软件著作权专有元数据组组合完成软件著作权证书原始数据定义。其中基础元数据组被两种数据复用,并为数据的主元数据组。
步骤5:发布数据定义,完成数据建模,自动生成数据库表。具体地,发布数据定义时,遍历数据定义中元数据组,判断元数据组是否完成生成数据库表,如果未完成则根据元数据配置生成数据库表;并根据是否为主元数据组创建表关联字段;复用的元数据组不再生成数据库表。比如发布专利权证书原始数据定义时,在数据库中分别生成基础元数据库表和专利专有元数据库表,在基础元数据库表中自动创建唯一标识字段,在专利专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现主元数据库表与其他元数据库表的关联。发布软件著作权证书原始数据定义时,由于基础元数据组已生成数据库表,所以只需生成软件著作权专有元数据库表,同样的,在软件著作权专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现与基础元数据库表的关联。生成数据库表时,自动根据元数据对应的组件类型生成表字段。对于基础组件和动态组件,在本发明中预设了组件类型和字段类型的对应关系,比如输入框对应字符串类型、计数器对应数值类型、日期选框对应日期类型、富文本框对应长文本类型等;当选择了动态表格组件时,需要根据参数自动在数据库中生成子表,并创建字段与当前元数据库表关联。布局组件主要用于让基础组件和动态组件在表单应用中有更好的展示效果,布局组件不会生成表字段。生成数据库表时,自动根据唯一键设置创建表的索引。为了进一步的减少开发过程的工作量,在本发明中通过数据库适配模块适配Oracle、MySql、SqlServer等数据库。
步骤6:自动生成数据应用,包括表单应用和表格应用,实现数据的查看、新建、编辑、动态获取数据、表格配置、翻页、排序、筛选、删除、查询、导出、导入等功能。具体地,表单应用主要用于对单条数据的处理,包括对数据详情的查看、新建数据、编辑数据功能,这些功能都由在本发明中预先实现的通用接口完成。在表单应用中,可以选择是用折叠面板或者标签页进行渲染,每个元数据组根据步骤3中组件布局和参数渲染为折叠面板或者标签页中的内容,折叠面板或者标签页的数量和显示顺序根据步骤4中数据定义时选择的元数据组和排序确定。表格应用是用表格对多条数据进行展示和处理,包括动态获取数据、表格配置、翻页、排序、筛选、删除、查询、导出、导入等功能,这些功能都由在本发明中预先实现的通用接口完成。根据数据库表关联关系动态生成获取数据sql语句。对于字典类元数据,本发明中提供转化器模块,将编码转化为标签进行展示。表格配置功能是在表格配置对话框中根据步骤4中数据定义列示当前数据的所有元数据,可以勾选需要在表格中显示的元数据,并设定显示顺序、列宽、视图模式、每页数量、是否显示序号、是否显示复选框等,其中视图模式包括:表格视图、缩略图视图、卡片视图。每个用户可以保存自己的表格配置,下次进入表格应用时自动按表格配置进行渲染。在表格的表头上可以对任一元数据列进行排序,如果元数据对应的组件类型为选择器,则还可以对该元数据列进行筛选。在查询对话框中,根据步骤3中元数据配置时的组件类型自动确定查询组件类型,比如元数据组件为下拉选择器,对应查询组件类型为多选选择器;元数据组件为日期选框,对应查询组件类型为日期范围选框等。并根据当前表格配置将查询组件分别放入常用条件栏和其他条件栏中,在表格中显示的元数据所对应的查询组件放入常用条件栏,隐藏的元数据所对应的查询组件放入其他条件栏,其他条件栏默认折叠。查询时根据数据库表关联关系动态生成查询sql语句。导出功能是将查询到的所有数据导出为Excel文件。导入功能包括导入模板生成、导入数据校验、导入数据新建或更新。根据步骤4中数据定义动态生成导入模板,按照模版提供的数据格式以及说明提供数据。在导入时自动将导入数据加载到前端页面中,根据步骤3中元数据配置的校验规则自动对数据进行校验并将提示显示到对应数据行。提交前需要选择提交设置,当选择“唯一字段重复时跳过”时,则重复的数据都不存入数据库;当选择“唯一字段重复时更新”,则根据唯一字段更新数据库中数据。提交完成后将每一行数据的导入结果都显示到前端页面中。
综上所述,本发明提供一种元数据可复用的数据建模方法,本方法首先获取多个类别的原始数据,其中每种原始数据至少包括有多个元数据;根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,元数据特性至少包括元数据可复用性;每种原始数据对应的多个元数据组至少包括:能够进行复用的基础元数据组、不能进行复用的专有元数据组;再对基础元数据组和所述专有元数据组进行组件配置;并基于组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;最后根据所有类别的原始数据定义生成数据库表,完成数据建模。业务开发人员在对待分组原始数据进行元数据分组时,可以直接对待分组原始数据中的元数据按照基础元数据组和专有元数据组进行分组。由此可知,通过本方法,无需每次都要专业技术人员进行干预,只需要业务人员根据实际业务需求,将元数据分为不同的组,通过拖拽组件等常规化操作零代码的快速完成元数据配置,再组合新配置的元数据组或者直接复用已有元数据组完成数据定义。本方法根据数据定义中元数据组件特征和组合关系完成数据建模,自动生成数据库表和数据应用,实现数据列表展示、新建、编辑、删除、查询等功能。本方法为开发者屏蔽了数据库建模过程,可快速的针对需求的变化做出相应的调整,使开发过程更直观更高效,避免了数据库表、表单页面以及数据存取接口重复开发,提升了代码的可复用性,降低了开发复杂度和开发门槛。所以,本方法提供了丰富的组件实现可视化元数据配置,通过有效复用元数据配置实现快速数据建模并减少数据库表冗余,根据元数据配置和数据建模,自动生成数据应用的界面和相关功能,提高开发效率。
如图3所示,本发明还提供一种元数据可复用的数据建模系统,所述系统包括有:
数据采集模块M10,用于获取多个类别的原始数据,每种原始数据包括但不限于有多个元数据;
第一分组模块M20,用于根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,所述元数据特性包括但不限于:元数据可复用性;每种原始数据对应的多个元数据组包括但不限于:能够进行复用的一个或多个基础元数据组、不能进行复用的一个或多个专有元数据组;
组件配置模块M30,用于对所述基础元数据组和所述专有元数据组进行组件配置;
第一组合排序模块M40,用于对完成组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;
数据建模模块M50,用于根据所有类别的原始数据定义生成数据库表,完成数据建模;
数据应用生成模块M60,用于根据元数据配置和数据建模,生成表单应用和/或表格应用。
由此可知,业务开发人员在对待分组原始数据进行元数据分组时,可以直接对待分组原始数据中的元数据按照基础元数据组和专有元数据组进行分组。通过本实施例,无需每次都要专业技术人员进行干预,只需要业务人员根据实际业务需求,将元数据分为不同的组,通过拖拽组件等常规化操作零代码的快速完成元数据配置,再组合新配置的元数据组或者直接复用已有元数据组完成数据定义。系统根据数据定义中元数据组件特征和组合关系完成数据建模,自动生成数据库表和数据应用,实现数据列表展示、新建、编辑、删除、查询等功能。本实施例为开发者屏蔽了数据库建模过程,可快速的针对需求的变化做出相应的调整,使开发过程更直观更高效,避免了数据库表、表单页面以及数据存取接口重复开发,提升了代码的可复用性,降低了开发复杂度和开发门槛。所以,本实施例提供了丰富的组件实现可视化元数据配置,通过有效复用元数据配置实现快速数据建模并减少数据库表冗余,根据元数据配置和数据建模,自动生成数据应用的界面和相关功能,提高开发效率。
在一示例性实施例中,如图4所示,本系统还包括:
主元数据组模块M70,用于从所述基础元数据组确定出能够关联其他元数据组的一个元数据组,记为主元数据组;
第二分组模块M80,用于将除所述主元数据组外的其他元数据组组合后形成的新元数据组记为第一元数据组,以及将所述主元数据组加入至所述第一元数据组中,记为第二元数据组;
第二组合排序模块M90,用于对所述第二元数据组中的所有元数据组进行排序,生成每个类别的原始数据定义。
作为示例,对于专利权证书原始数据和软件著作权证书原始数据而言,这两种原始数据存在的相同元数据有名称、编号、权利人等,不同的元数据有:专利类型、授权日期、版本号、开发完成日期等。所以,本实施例可以将相同的元数据名称、编号、权利人划分为基础元数据组,并将基础元数据组定义为主元数据组,将专利类型、授权日期划分为专利专有元数据组,将版本号、开发完成日期划分为软件著作权专有元数据组。其中,基础元数据组可以被专利权证书原始数据和软件著作权证书原始数据复用,所以本实施例只需要将专利权证书原始数据和软件著作权证书原始数据分为基础元数据组、专利专有元数据组和软件著作权专有元数据组即可,即分为三个元数据组。本实施例在生成原始数据定义时,用户可以根据实际的建模数据选择匹配的元数据组进行组合,必须选择且仅选择一个主元数据组,然后对元数据组进行排序。例如对于专利权证书原始数据和软件著作权证书原始数据而言,在完成对基础元数据组、专利专有元数据组和软件著作权专有元数据组的配置后,选择基础元数据组、专利专有元数据组组合完成专利权证书原始数据定义,选择基础元数据组、软件著作权专有元数据组组合完成软件著作权证书原始数据定义。其中,基础元数据组因为其能够被两种原始数据进行复用,所以本实施例将其作为原始数据的主元数据组。
在一示例性实施例中,本系统还包括:获取待分组原始数据;利用所述基础元数据组来对所述待分组原始数据中的元数据进行分组;若对所述待分组原始数据进行分组时,所述待分组原始数据中还存在至少一个元数据不能被分进所述基础元数据组中,则将所述至少一个元数据分组至专有元数据组。本实施例可以将数据建模后形成的模型称为元数据组分组模型。作为示例,本实施例还包括判断当前时刻的专有元数据组与所述元数据分组模型中的专有元数据组是否相同,若不相同,则根据当前时间的专有元数据组与所述基础元数据组进行组合和排序,建立新的元数据组分组模型。作为示例,若元数据分组模型是基于专利权证书原始数据和软件著作权证书原始数据生成的,则在待分组原始数据为商标权证书原始数据时,目前的元数据分组模型在对商标权证书原始数据进行元数据分组时,还会存在商标图案、商品服务等剩余的元数据,则本实施例可以将商标图案、商品服务进行组合,作为当前时刻的专有元数据组,也可以分别将商标图案作为一个专有元数据组,将商品服务作为一个专有元数据组。由于目前的元数据分组模型不能对商标图案、商品服务进行元数据分组,所以本实施例还可以再建立一个新的元数据分组模型,用于对当前及后续的商标证书原始数据进行元数据分组。
在一示例性实施例中,对所述基础元数据组或所述专有元数据组进行组件配置的过程包括:获取所述基础元数据组或所述专有元数据组的配置界面;在所述配置界面中的预设组件显示区域中选择目标组件,并对所选择的目标组件进行拖拽形成页面布局;所述预设组件以下至少之一:基础组件、布局组件和动态组件;对进行页面布局后的组件进行参数设置,并在完成参数设置后,保存当前参数设置,完成对所述基础元数据组或所述专有元数据组的组件配置。在本实施例中,元数据组配置界面由组件区、编辑区、参数区、操作区四部分组成,根据实际的需要还可以增加其他区域,如增加组件嵌套关系展示区等。
其中,组件区用于显示组件库中的组件,组件库预先提供了多种组件,包括基础组件、布局组件和动态组件。作为示例,基础组件包括但不限于:输入框组件、计数器组件、密码框组件、文本域组件、单选框组件、复选框组件、日期选框组件、时间选框组件、评分组件、开关组件、提示框组件、颜色选择器组件、图标组件、头像组件和富文本框组件;布局组件包括但不限于:分割线组件、栅格布局组件、卡片布局组件和标签页布局组件;动态组件包括但不限于:流水号组件、组织选择器组件、角色选择器组件、人员选择器组件、下拉选择器组件、级联选择器组件、树选择器组件、滑动输入条组件、上传文件组件、上传图片组件和动态表格组件。本实施例中的组件数量可以根据业务的实际需求进行相应的增减,本实施例在此并不做具体的数量限定。编辑区用于执行用户对组件的选择和拖拽,对已选组件进行页面布局;在编辑区可以对组件进行删除和复制,使用复制的方式可以进行快速的组件选择和参数配置。参数区用于设置表单和组件的参数,在本实施例中,多个组件形成一个表单。表单参数主要包括表单布局方式、标签布局方式、标签宽度、权限设置和唯一键设置,其中权限设置可以分别设置组件新建、编辑、查看时的权限,表单的唯一键可以设置一个或多个,并且可以选择一个元数据或多个元数据组合为唯一键。每种组件都有特定的参数,系统根据组件定义,在参数区中动态渲染组件的属性参数,包括:标签名称、数据字段、大小、宽度、样式、提示内容、默认值、状态、校验规则、数据来源等,其中数据字段即为生成数据库表时的字段名称,状态包括:可编辑、只读、隐藏,校验规则包括:非空校验、正则表达式校验、动态函数校验等。如果组件为动态组件,还可以在参数区设置数据来源,数据来源包括:静态数据、数据字典、动态方法获取等。默认值、校验规则、数据来源都可以根据业务的实际需求进行相应的增加和修改,在此并不做具体的限定。当表单或组件的参数发生变化时,在编辑区实时监听并自动重新渲染组件样式,达到所见即所得,参数配置与展示效果实时同步。操作区用于展示操作按钮,操作按钮包括:保存、预览、查看JSON数据、清空、撤销、重做。
在一示例性实施例中,在根据所有类别的原始数据定义生成数据库表时,还包括:遍历所有原始数据定义中的元数据组,并判断这些元数据组是否生成数据库表;如果未生成数据库表,则根据所述元数据组的组件配置在数据库中生成数据库表,且在所述主元数据组所对应的主元数据库表中创建唯一标识字段,以及在所述第一元数据组所对应的元数据库表中创建关联字段;所述数据库包括但不限于:Oracle、MySql、SqlServer;如果已生成数据库表,则直接复用已生成的数据库表。在本实施例中,复用的元数据组不再生成数据库表,即一些实施例中的基础元数据组不在生成数据库表。作为示例,比如发布专利权证书原始数据定义时,在数据库中分别生成基础元数据库表和专利专有元数据库表,在基础元数据库表中自动创建唯一标识字段,在专利专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现主元数据库表与其他元数据库表的关联。发布软件著作权证书原始数据定义时,由于基础元数据组已生成数据库表,所以只需生成软件著作权专有元数据库表,同样的,在软件著作权专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现与基础元数据库表的关联。生成数据库表时,自动根据元数据对应的组件类型生成表字段。对于基础组件和动态组件,在本实施例中预设了组件类型和字段类型的对应关系,比如输入框对应字符串类型、计数器对应数值类型、日期选框对应日期类型、富文本框对应长文本类型等;当选择了动态表格组件时,需要根据参数自动在数据库中生成子表,并创建字段与当前元数据库表关联。布局组件主要用于让基础组件和动态组件在表单应用中有更好的展示效果,布局组件不会生成表字段。本实施例生成数据库表时,可以自动根据唯一键设置创建表的索引。本实施例在生成数据库表时,通过适配Oracle、MySql、SqlServer等数据库,可以进一步的减少开发过程的工作量。
在一示例性实施例中,在生成所述数据库表后,数据应用生成模块M60还包括:生成表单应用和/或表格应用,这些应用可以由预先实现的通用接口完成。所述表单应用用于对单条数据进行处理,包括:查看数据详情处理、新建数据处理和编辑数据处理;在表单应用中,可以选择是用折叠面板或者标签页进行渲染,每个元数据组根据组件配置时的组件布局和参数渲染为折叠面板或者标签页中的内容,折叠面板或者标签页的数量和显示顺序根据生成数据定义时元数据组的组合和排序确定。所述表格应用用于对多条数据进行展示和处理,包括:动态获取数据展示和处理、表格配置展示和处理、翻页展示和处理、排序展示和处理、筛选展示和处理、批量删除处理、查询展示和处理、导出展示和处理和导入展示和处理。
在表格应用中,根据数据库表关联关系动态生成获取数据sql语句,对于字典类元数据,本实施例中提供转化器模块,将编码转化为标签进行展示。表格配置功能是在表格配置对话框中根据生成的数据定义列示当前数据的所有元数据,可以勾选需要在表格中显示的元数据,并设定显示顺序、列宽、视图模式、每页数量、是否显示序号、是否显示复选框等,其中视图模式包括:表格视图、缩略图视图、卡片视图。每个用户可以保存自己的表格配置,下次进入表格应用时自动按表格配置进行渲染。在表格的表头上可以对任一元数据列进行排序,如果元数据对应的组件类型为选择器,则还可以对该元数据列进行筛选。在查询对话框中,根据组件配置步骤中元数据配置时的组件类型自动确定查询组件类型,比如元数据组件为下拉选择器,对应查询组件类型为多选选择器;元数据组件为日期选框,对应查询组件类型为日期范围选框等。并根据当前表格配置将查询组件分别放入常用条件栏和其他条件栏中,在表格中显示的元数据所对应的查询组件放入常用条件栏,隐藏的元数据所对应的查询组件放入其他条件栏,其他条件栏默认折叠。查询时根据数据库表关联关系动态生成查询sql语句。导出功能是将查询到的所有数据导出为Excel文件。导入功能包括导入模板生成、导入数据校验、导入数据新建或更新。根据生成的数据定义动态生成导入模板,按照模版提供的数据格式以及说明提供数据。在导入时自动将导入数据加载到前端页面中,根据组件配置步骤中元数据配置的校验规则自动对数据进行校验并将提示显示到对应数据行。提交前需要选择提交设置,当选择“唯一字段重复时跳过”时,则重复的数据都不存入数据库;当选择“唯一字段重复时更新”,则根据唯一字段更新数据库中数据。提交完成后将每一行数据的导入结果都显示到前端页面中。
在另一实施例,本实施例提供一种元数据可复用的数据建模系统,用于执行以下步骤:
步骤1:用户根据实际的建模数据将元数据划分为不同的元数据组,并定义主元数据组。具体地,根据元数据的特性将元数据划分为不同的组并定义主元数据组,元数据的特性包括但不限于元数据的可复用性。比如专利权证书原始数据和软件著作权证书原始数据,可以将相同的元数据名称、编号、权利人划分为基础元数据组并定义为主元数据组,将专利类型、授权日期划分为专利专有元数据组,将版本号、开发完成日期划分为软件著作权专有元数据组。其中,基础元数据组可以被专利权证书原始数据和软件著作权证书原始数据复用,所以在元数据组管理模块中只需创建基础元数据组、专利专有元数据组和软件著作权专有元数据组三个元数据组。
步骤2:判断划分出的元数据组是否已完成组件配置。若未完成组件配置,则进入步骤3,若已完成组件配置,则进入步骤4。
步骤3:选择步骤1中新创建的元数据组,通过拖拽完成元数据配置。其中,元数据组配置界面由组件区、编辑区、参数区、操作区四部分组成,根据实际的需要还可以增加其他区域,如组件嵌套关系展示区等。组件区用于显示组件库中的组件,组件库提供了基础组件、布局组件和动态组件,比如输入框、计数器、单选框、复选框、日期选框、富文本框、卡片布局、标签页布局、流水号、组织选择器、级联选择器、树选择器、动态表格等组件,组件的数量可以根据业务的实际需求进行相应的增减,在此并不做具体的限定。编辑区用于执行用户对组件的选择和拖拽,对已选组件进行页面布局。在编辑区可以对组件进行删除和复制,使用复制的方式可以进行快速的组件选择和参数配置。参数区用于设置表单和组件的参数。表单参数主要包括表单布局方式、标签布局方式、标签宽度和唯一键设置,其中表单的唯一键可以设置一个或多个,并且可以选择一个元数据或多个元数据组合为唯一键。每种组件都有特定的参数,系统根据组件定义,在参数区中动态渲染组件的属性参数,包括:标签名称、数据字段、大小、宽度、样式、提示内容、默认值、状态、校验规则、数据来源等,其中数据字段即为生成数据库表时的字段名称,状态包括:可编辑、只读、隐藏,校验规则包括:非空校验、正则表达式校验、动态函数校验等。如果组件为动态组件,还可以在参数区设置数据来源,数据来源包括:静态数据、数据字典、动态方法获取等。默认值、校验规则、数据来源都可以根据业务的实际需求进行相应的增加和修改,在此并不做具体的限定。当表单或组件的参数发生变化时,在编辑区实时监听并自动重新渲染组件样式,达到所见即所得,参数配置与展示效果实时同步。操作区用于展示操作按钮,操作按钮包括:保存、预览、查看JSON数据、清空、撤销、重做。以步骤1中创建的基础元数据组为例,基础元数据中包括名称、编号、权利人3个元数据。进入基础元数据组配置界面后,通过从组件区中拖拽组件到编辑区进行规划布局,其中名称、编号使用输入框组件,权利人使用人员选择器组件。组件拖拽到编辑区后在参数区设置组件参数,比如设置名称、编号的校验规则为必填,设置权利人的选择类型为多选。完成布局和参数设置后,点击预览按钮可以查看到该元数据组在表单应用中的展示效果,点击保存按钮保存元数据配置。
步骤4:选择元数据组进行组合和排序,形成数据定义。具体地,用户根据实际的建模数据选择匹配的元数据组进行组合,必须选择且仅选择一个主元数据组,并对元数据组进行排序。比如专利权证书原始数据和软件著作权证书原始数据,按步骤3描述完成对基础元数据组、专利专有元数据组和软件著作权专有元数据组的配置后,选择基础元数据组、专利专有元数据组组合完成专利权证书原始数据定义,选择基础元数据组、软件著作权专有元数据组组合完成软件著作权证书原始数据定义。其中基础元数据组被两种数据复用,并为数据的主元数据组。
步骤5:发布数据定义,完成数据建模,自动生成数据库表。具体地,发布数据定义时,遍历数据定义中元数据组,判断元数据组是否完成生成数据库表,如果未完成则根据元数据配置生成数据库表;并根据是否为主元数据组创建表关联字段;复用的元数据组不再生成数据库表。比如发布专利权证书原始数据定义时,在数据库中分别生成基础元数据库表和专利专有元数据库表,在基础元数据库表中自动创建唯一标识字段,在专利专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现主元数据库表与其他元数据库表的关联。发布软件著作权证书原始数据定义时,由于基础元数据组已生成数据库表,所以只需生成软件著作权专有元数据库表,同样的,在软件著作权专有元数据库表中除创建唯一标识字段外还会自动创建关联字段,实现与基础元数据库表的关联。生成数据库表时,自动根据元数据对应的组件类型生成表字段。对于基础组件和动态组件,在本发明中预设了组件类型和字段类型的对应关系,比如输入框对应字符串类型、计数器对应数值类型、日期选框对应日期类型、富文本框对应长文本类型等;当选择了动态表格组件时,需要根据参数自动在数据库中生成子表,并创建字段与当前元数据库表关联。布局组件主要用于让基础组件和动态组件在表单应用中有更好的展示效果,布局组件不会生成表字段。生成数据库表时,自动根据唯一键设置创建表的索引。为了进一步的减少开发过程的工作量,在本发明中通过数据库适配模块适配Oracle、MySql、SqlServer等数据库。
步骤6:自动生成数据应用,包括表单应用和表格应用,实现数据的查看、新建、编辑、动态获取数据、表格配置、翻页、排序、筛选、删除、查询、导出、导入等功能。具体地,表单应用主要用于对单条数据的处理,包括对数据详情的查看、新建数据、编辑数据功能,这些功能都由在本发明中预先实现的通用接口完成。在表单应用中,可以选择是用折叠面板或者标签页进行渲染,每个元数据组根据步骤3中组件布局和参数渲染为折叠面板或者标签页中的内容,折叠面板或者标签页的数量和显示顺序根据步骤4中数据定义时选择的元数据组和排序确定。表格应用是用表格对多条数据进行展示和处理,包括动态获取数据、表格配置、翻页、排序、筛选、删除、查询、导出、导入等功能,这些功能都由在本发明中预先实现的通用接口完成。根据数据库表关联关系动态生成获取数据sql语句。对于字典类元数据,本发明中提供转化器模块,将编码转化为标签进行展示。表格配置功能是在表格配置对话框中根据步骤4中数据定义列示当前数据的所有元数据,可以勾选需要在表格中显示的元数据,并设定显示顺序、列宽、视图模式、每页数量、是否显示序号、是否显示复选框等,其中视图模式包括:表格视图、缩略图视图、卡片视图。每个用户可以保存自己的表格配置,下次进入表格应用时自动按表格配置进行渲染。在表格的表头上可以对任一元数据列进行排序,如果元数据对应的组件类型为选择器,则还可以对该元数据列进行筛选。在查询对话框中,根据步骤3中元数据配置时的组件类型自动确定查询组件类型,比如元数据组件为下拉选择器,对应查询组件类型为多选选择器;元数据组件为日期选框,对应查询组件类型为日期范围选框等。并根据当前表格配置将查询组件分别放入常用条件栏和其他条件栏中,在表格中显示的元数据所对应的查询组件放入常用条件栏,隐藏的元数据所对应的查询组件放入其他条件栏,其他条件栏默认折叠。查询时根据数据库表关联关系动态生成查询sql语句。导出功能是将查询到的所有数据导出为Excel文件。导入功能包括导入模板生成、导入数据校验、导入数据新建或更新。根据步骤4中数据定义动态生成导入模板,按照模版提供的数据格式以及说明提供数据。在导入时自动将导入数据加载到前端页面中,根据步骤3中元数据配置的校验规则自动对数据进行校验并将提示显示到对应数据行。提交前需要选择提交设置,当选择“唯一字段重复时跳过”时,则重复的数据都不存入数据库;当选择“唯一字段重复时更新”,则根据唯一字段更新数据库中数据。提交完成后将每一行数据的导入结果都显示到前端页面中。
综上所述,本发明提供一种元数据可复用的数据建模系统,本系统首先获取多个类别的原始数据,其中每种原始数据至少包括有多个元数据;根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,元数据特性至少包括元数据可复用性;每种原始数据对应的多个元数据组至少包括:能够进行复用的基础元数据组、不能进行复用的专有元数据组;再对基础元数据组和所述专有元数据组进行组件配置;并基于组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;最后根据所有类别的原始数据定义生成数据库表,完成数据建模。业务开发人员在对待分组原始数据进行元数据分组时,可以直接对待分组原始数据中的元数据按照基础元数据组和专有元数据组进行分组。由此可知,通过本系统,无需每次都要专业技术人员进行干预,只需要业务人员根据实际业务需求,将元数据分为不同的组,通过拖拽组件等常规化操作零代码的快速完成元数据配置,再组合新配置的元数据组或者直接复用已有元数据组完成数据定义。本系统根据数据定义中元数据组件特征和组合关系完成数据建模,自动生成数据库表和数据应用,实现数据列表展示、新建、编辑、删除、查询等功能。本系统为开发者屏蔽了数据库建模过程,可快速的针对需求的变化做出相应的调整,使开发过程更直观更高效,避免了数据库表、表单页面以及数据存取接口重复开发,提升了代码的可复用性,降低了开发复杂度和开发门槛。所以,本系统提供了丰富的组件实现可视化元数据配置,通过有效复用元数据配置实现快速数据建模并减少数据库表冗余,根据元数据配置和数据建模,自动生成数据应用的界面和相关功能,提高开发效率。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。应当理解的是,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述预设范围等,但这些预设范围不应限于这些术语。这些术语仅用来将预设范围彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一预设范围也可以被称为第二预设范围,类似地,第二预设范围也可以被称为第一预设范围。
Claims (9)
1.一种元数据可复用的数据建模方法,其特征在于,所述方法包括以下步骤:
获取多个类别的原始数据,每种原始数据至少包括有多个元数据;
根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,所述元数据特性至少包括:元数据可复用性;每种原始数据对应的多个元数据组至少包括:能够进行复用的基础元数据组、不能进行复用的专有元数据组;
对所述基础元数据组和所述专有元数据组进行组件配置;包括:获取所述基础元数据组或所述专有元数据组的配置界面;在所述配置界面中的预设组件显示区域中选择目标组件,并对所选择的目标组件进行拖拽形成页面布局;所述预设组件以下至少之一:基础组件、布局组件和动态组件;对进行页面布局后的组件进行参数设置,并在完成参数设置后,保存当前参数设置,完成对所述基础元数据组或所述专有元数据组的组件配置;所述参数包括:组件参数和表单参数;
基于组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;
根据所有类别的原始数据定义生成数据库表,完成数据建模。
2.根据权利要求1所述的元数据可复用的数据建模方法,其特征在于,所述方法还包括:
从所述基础元数据组确定出能够关联其他元数据组的一个元数据组,记为主元数据组;
将除所述主元数据组外的其他元数据组组合后形成的新元数据组记为第一元数据组;
将所述主元数据组加入至所述第一元数据组中,记为第二元数据组;
对所述第二元数据组中的所有元数据组进行排序,生成每个类别的原始数据定义。
3.根据权利要求1或2所述的元数据可复用的数据建模方法,其特征在于,所述方法还包括:
获取待分组原始数据;
利用所述基础元数据组来对所述待分组原始数据中的元数据进行分组;
若对所述待分组原始数据进行分组时,所述待分组原始数据中还存在至少一个元数据不能被分进所述基础元数据组中,则将所述至少一个元数据分组至专有元数据组。
4.根据权利要求1所述的元数据可复用的数据建模方法,其特征在于,所述基础组件包括:输入框组件、计数器组件、密码框组件、文本域组件、单选框组件、复选框组件、日期选框组件、时间选框组件、评分组件、开关组件、提示框组件、颜色选择器组件、图标组件、头像组件和富文本框组件;
所述布局组件包括:分割线组件、栅格布局组件、卡片布局组件和标签页布局组件;
所述动态组件包括:流水号组件、组织选择器组件、角色选择器组件、人员选择器组件、下拉选择器组件、级联选择器组件、树选择器组件、滑动输入条组件、上传文件组件、上传图片组件和动态表格组件。
5.根据权利要求1或4所述的元数据可复用的数据建模方法,其特征在于,所述预设组件中的组件参数包括:标签名称、数据字段、大小、宽度、样式、提示内容、默认值、状态、校验规则、数据来源;
其中,所述数据字段为生成数据库表时的字段名称;所述状态包括:可编辑、只读、隐藏;所述校验规则包括:非空校验、正则表达式校验、动态函数校验;所述数据来源包括:静态数据、数据字典、动态方法获取;
所述表单参数包括:表单布局方式、标签布局方式、标签宽度、权限设置和唯一键设置;
其中,所述权限设置用于设置组件新建、编辑、查看时的权限;所述唯一键设置用于设置一个或多个唯一键,以及选择一个组件或多个组件组合为唯一键。
6.根据权利要求2所述的元数据可复用的数据建模方法,其特征在于,在根据所有类别的原始数据定义生成数据库表时,还包括:
遍历所有原始数据定义中的元数据组,并判断这些元数据组是否生成数据库表;
如果未生成数据库表,则根据所述元数据组的组件配置在数据库中生成数据库表,且在所述主元数据组所对应的主元数据库表中创建唯一标识字段,以及在所述第一元数据组所对应的元数据库表中创建关联字段;所述数据库包括:Oracle、MySql、SqlServer;
如果已生成数据库表,则直接复用已生成的数据库表。
7.根据权利要求6所述的元数据可复用的数据建模方法,其特征在于,在生成所述数据库表后,还包括:生成表单应用和/或表格应用;
所述表单应用用于对单条数据进行处理,包括:查看数据详情处理、新建数据处理和编辑数据处理;
所述表格应用用于对多条数据进行展示和处理,包括:动态获取数据展示和处理、表格配置展示和处理、翻页展示和处理、排序展示和处理、筛选展示和处理、批量删除处理、查询展示和处理、导出展示和处理和导入展示和处理。
8.一种元数据可复用的数据建模系统,其特征在于,所述系统包括有:
数据采集模块,用于获取多个类别的原始数据,每种原始数据至少包括有多个元数据;
第一分组模块,用于根据元数据特性对每种原始数据进行分组,获取每种原始数据对应的多个元数据组;其中,所述元数据特性至少包括:元数据可复用性;每种原始数据对应的多个元数据组至少包括:能够进行复用的基础元数据组、不能进行复用的专有元数据组;
组件配置模块,用于对所述基础元数据组和所述专有元数据组进行组件配置;包括:获取所述基础元数据组或所述专有元数据组的配置界面;在所述配置界面中的预设组件显示区域中选择目标组件,并对所选择的目标组件进行拖拽形成页面布局;所述预设组件以下至少之一:基础组件、布局组件和动态组件;对进行页面布局后的组件进行参数设置,并在完成参数设置后,保存当前参数设置,完成对所述基础元数据组或所述专有元数据组的组件配置;所述参数包括:组件参数和表单参数;
第一组合排序模块,用于对完成组件配置后的元数据组进行元数据组组合、排序,生成每个类别的原始数据定义;
数据建模模块,用于根据所有类别的原始数据定义生成数据库表,完成数据建模。
9.根据权利要求8所述的元数据可复用的数据建模系统,其特征在于,所述系统还包括:
主元数据组模块,用于从所述基础元数据组确定出能够关联其他元数据组的一个元数据组,记为主元数据组;
第二分组模块,用于将除所述主元数据组外的其他元数据组组合后形成的新元数据组记为第一元数据组,以及将所述主元数据组加入至所述第一元数据组中,记为第二元数据组;
第二组合排序模块,用于对所述第二元数据组中的所有元数据组进行排序,生成每个类别的原始数据定义。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111369011.3A CN114064611B (zh) | 2021-11-18 | 2021-11-18 | 一种元数据可复用的数据建模方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111369011.3A CN114064611B (zh) | 2021-11-18 | 2021-11-18 | 一种元数据可复用的数据建模方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114064611A CN114064611A (zh) | 2022-02-18 |
CN114064611B true CN114064611B (zh) | 2024-07-12 |
Family
ID=80278086
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111369011.3A Active CN114064611B (zh) | 2021-11-18 | 2021-11-18 | 一种元数据可复用的数据建模方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114064611B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116301811B (zh) * | 2023-03-30 | 2023-10-20 | 广州市华势信息科技有限公司 | 一种零代码可视化的软件开发平台 |
CN117331560B (zh) * | 2023-11-24 | 2024-02-23 | 杭银消费金融股份有限公司 | 一种前端表单页面生成方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552713A (zh) * | 2020-04-30 | 2020-08-18 | 国网信息通信产业集团有限公司 | 一种数据校验方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009047674A2 (en) * | 2007-10-08 | 2009-04-16 | Koninklijke Philips Electronics N.V. | Generating metadata for association with a collection of content items |
CN102789382B (zh) * | 2012-06-28 | 2015-09-23 | 用友软件股份有限公司 | 用于表单生成和运行的系统及方法 |
US10489493B2 (en) * | 2012-09-13 | 2019-11-26 | Oracle International Corporation | Metadata reuse for validation against decentralized schemas |
CN111986799B (zh) * | 2020-07-06 | 2024-06-04 | 北京欧应信息技术有限公司 | 一种以关节运动功能为核心的骨科知识图谱的构建系统 |
-
2021
- 2021-11-18 CN CN202111369011.3A patent/CN114064611B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552713A (zh) * | 2020-04-30 | 2020-08-18 | 国网信息通信产业集团有限公司 | 一种数据校验方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114064611A (zh) | 2022-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9922054B2 (en) | Data retrieval apparatus, program and recording medium | |
CN114064611B (zh) | 一种元数据可复用的数据建模方法及系统 | |
US5987472A (en) | System and method for handling database cross references | |
US6240395B1 (en) | Device and method for project management | |
US5960435A (en) | Method, system, and computer program product for computing histogram aggregations | |
US7760405B2 (en) | Apparatus and method for integrating print preview with data modeling document editing | |
CA2526045C (en) | Complex data access | |
JP3108984B2 (ja) | データ処理装置 | |
CN110543303B (zh) | 一种可视化业务平台 | |
CN106570047A (zh) | 智能管理系统生成系统Hxcel技术方法 | |
JPS60108960A (ja) | 製造工程の信頼性分析システム | |
US6698010B1 (en) | System, method and computer program product for automatic generation of data processing program | |
US20120192053A1 (en) | Method, Software and Computer System for Manipulating Aggregated Data | |
US20050149482A1 (en) | Method of updating a database created with a spreadsheet program | |
CN113626030A (zh) | 一种数据可视化大屏快速搭建方法和系统 | |
JP2007133624A (ja) | 連結関係情報を用いた情報管理方法及び装置 | |
JP3926496B2 (ja) | プロジェクト管理システム | |
JP4011995B2 (ja) | 製品設計支援装置及び方法 | |
KR20050061557A (ko) | 데이터 처리방법 및 데이터 처리 프로그램 | |
US20080270985A1 (en) | Database application assembly and preparation | |
KR100428706B1 (ko) | 패턴과 컴포넌트를 이용한 프로그램 코드 자동 생성방법 | |
US6898474B2 (en) | Method and system for creating and managing engineered time standards | |
JP6851285B2 (ja) | 見積作成支援システム、見積作成支援方法およびプログラム | |
US20060287977A1 (en) | Method of processing data for a system model | |
JPH0588863A (ja) | プログラム開発支援システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 401329 No. 5-6, building 2, No. 66, Nongke Avenue, Baishiyi Town, Jiulongpo District, Chongqing Applicant after: MCC CCID information technology (Chongqing) Co.,Ltd. Address before: 401329 No. 5-6, building 2, No. 66, Nongke Avenue, Baishiyi Town, Jiulongpo District, Chongqing Applicant before: CISDI CHONGQING INFORMATION TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |