一种基于元数据自发现的数据查询接口自动生成方法及系统技术方案

技术编号:21771624 阅读:28 留言:0更新日期:2019-08-03 21:33
基于元数据自发现的数据查询接口自动生成方法,包括:元数据管理系统自动发现数据库中表及表结构,并保存到业务数据库中;使用者选择数据表,配置查询字段及参数,数据查询系统中保存相关参数;系统根据使用者选择的数据查询参数列表生成一个SQL语句模板,该模板可以接受使用者指定的参数及运算符作为参数;系统生成一个对应的URL地址并增加一条路由转发规则与该API映射;使用接口查询数据时,应用通过指定URL对API进行调用;根据URL对应的参数列表检查输入参数合法性;如果参数合法,则对以保存的SQL语句模板使用参数生成SQL语句;调用数据库查询数据,将结果数据按照JSON格式序列化,通过数据流的方式返回数据。

A Method and System for Automatic Generation of Data Query Interface Based on Metadata Self-discovery

【技术实现步骤摘要】
一种基于元数据自发现的数据查询接口自动生成方法及系统
本专利技术属于数据库
,特别涉及一种基于元数据自发现的数据查询接口自动生成方法及系统。
技术介绍
随着信息化建设的不断发展,数据不断增多,数据查询的需求越来越多。现有技术能根据固定的数据结构,通过编写sql语句生成查询接口。但是当数据结构发生变化,当需要不同的查询参数,都只能重新编写sql重新生成接口,带来极大的重复开发工作量。
技术实现思路
本专利技术提供了一种基于元数据自发现的数据查询接口自动生成方法及系统,用于解决现有数据查询接口需要重复开发的问题。本专利技术实施例之一,一种基于元数据自发现的数据查询接口自动生成方法,包括以下步骤:步骤1,元数据管理系统自动发现数据库中表及表结构,并保存到业务数据库中;步骤2,使用者选择数据表,配置查询字段及参数,数据查询系统中保存相关参数;步骤3,系统根据使用者选择的数据查询参数列表生成一个SQL语句模板,该模板可以接受使用者指定的参数及运算符作为参数;步骤4,系统生成一个对应的URL地址并增加一条路由转发规则与该API映射;步骤5,重复步骤2至步骤4,反复为不同表、不同查询参数创建多个API;步骤6,使用接口查询数据时,应用通过指定URL对API进行调用;步骤7,根据URL对应的参数列表检查输入参数合法性;步骤8,如果参数合法,则对以保存的SQL语句模板使用参数生成SQL语句;步骤9,调用数据库查询数据,将结果数据按照JSON格式序列化,通过数据流的方式返回数据。本专利技术的有益效果包括:1,减少人工重复编写SQL语句的工作量;2,适应数据结构变化的场景,支持动态产生查询接口;3,适应查询参数变化的场景,支持动态组装sql语句。附图说明通过参考附图阅读下文的详细描述,本专利技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本专利技术的若干实施方式,其中:图1根据本专利技术实施例之一的基于元数据自发现的数据查询接口自动生成系统示意图。具体实施方式根据一个或者多个实施例,如图1所示,一种基于元数据自发现的数据查询接口自动生成方法,包括以下步骤:步骤1.元数据管理系统自动发现数据库中表及表结构,并保存到业务数据库中,步骤1.1在元数据管理系统中注册需要查询数据的数据源链接信息;步骤1.2元数据管理系统通过配置定时任务,定时自动扫描数据库;步骤1.3自动发现数据源的表及表结构,包括表名称、字段名称、字段类型、字段备注;步骤1.4将步骤1.3发现的数据保存到业务数据库中,步骤2.使用者选择数据表,配置查询字段及参数,数据查询系统中保存相关参数,步骤2.1获取元数据管理系统保存的数据表信息,系统将存在的表与表结构以列表的形式呈现给数据使用者;步骤2.2使用者选择需要自动生成数据查询API的表,并选择运行在API中进行查询参数传递的字段以及参数规则;步骤2.3系统将相关参数保存到数据库,步骤3系统根据使用者选择的数据查询参数列表生成一个SQL语句模板,该模板可以接受使用者指定的参数及运算符作为参数;步骤4系统生成一个对应的URL地址并增加一条路由转发规则与该API映射;步骤5重复步骤2至步骤4,可反复为不同表、不同查询参数创建多个API;步骤6使用接口查询数据时,应用通过指定URL对API进行调用;步骤7系统根据URL对应的参数列表检查输入参数合法性;步骤8如果参数合法,则对以保存的SQL语句模板使用参数生成SQL语句;步骤9调用数据库查询数据,将结果数据按照JSON格式序列化,通过数据流的方式返回数据。本实施例提供一种当数据结构发生变化、当需要不同的查询参数时,无须重新编写SQL,自动生成查询接口的方法。根据一个或者多个实施例,如图1所示,一种基于元数据自发现的数据查询接口自动生成系统,该系统包括:元数据管理系统、数据接口系统、数据查询系统,元数据管理系统的功能包括:注册数据源、定时扫描数据源、获取所有表和获取表的字段,生成数据源信息、表以及表结构;数据接口系统的功能包括:根据数据源信息、表以及表结构获取所有表、通过选择表获取表结构、配置数据查询参数后生成SOL模板、生成URL、由路由转发建立URL-API映射;数据查询系统功能包括:检查URL合法性、如果参数合法则根据参数生成SQL语句、调用数据库查询数据后通过数据流返回数据。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本专利技术的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本专利技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本专利技术的具体实施方式,但本专利技术的保护范围并不局限于此,任何熟悉本
的技术人员在本专利技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本专利技术的保护范围之内。因此,本专利技术的保护范围应以权利要求的保护范围为准。本文档来自技高网
...

【技术保护点】
1.一种基于元数据自发现的数据查询接口自动生成方法,其特征在于,包括以下步骤:步骤1,元数据管理系统自动发现数据库中表及表结构,并保存到业务数据库中;步骤2,使用者选择数据表,配置查询字段及参数,数据查询系统中保存相关参数;步骤3,系统根据使用者选择的数据查询参数列表生成一个SQL语句模板,该模板可以接受使用者指定的参数及运算符作为参数;步骤4,系统生成一个对应的URL地址并增加一条路由转发规则与该API映射;步骤5,重复步骤2至步骤4,反复为不同表、不同查询参数创建多个API;步骤6,使用接口查询数据时,应用通过指定URL对API进行调用;步骤7,根据URL对应的参数列表检查输入参数合法性;步骤8,如果参数合法,则对以保存的SQL语句模板使用参数生成SQL语句;步骤9,调用数据库查询数据,将结果数据按照JSON格式序列化,通过数据流的方式返回数据。

【技术特征摘要】
1.一种基于元数据自发现的数据查询接口自动生成方法,其特征在于,包括以下步骤:步骤1,元数据管理系统自动发现数据库中表及表结构,并保存到业务数据库中;步骤2,使用者选择数据表,配置查询字段及参数,数据查询系统中保存相关参数;步骤3,系统根据使用者选择的数据查询参数列表生成一个SQL语句模板,该模板可以接受使用者指定的参数及运算符作为参数;步骤4,系统生成一个对应的URL地址并增加一条路由转发规则与该API映射;步骤5,重复步骤2至步骤4,反复为不同表、不同查询参数创建多个API;步骤6,使用接口查询数据时,应用通过指定URL对API进行调用;步骤7,根据URL对应的参数列表检查输入参数合法性;步骤8,如果参数合法,则对以保存的SQL语句模板使用参数生成SQL语句;步骤9,调用数据库查询数据,将结果数据按照JSON格式序列化,通过数据流的方式返回数据。2.根据权利要求1所述的基于元数据自发现的数据查询接口自动生成方法,其特征在于,进一步的,步骤1包括:步骤1.1,在元数据管理系统中注册需要查询数据的数据源链接信息;步骤1.2,元数据管理系统通过配置定时任务,定时自动扫描数据库...

【专利技术属性】
技术研发人员:陈昊王鹏于会游姜玉峰滕姿李栋杜浩唐丽娜饶定远陈燕秋闵圣捷杨飞丁晓宇董一舟
申请(专利权)人:中电科嘉兴新型智慧城市科技发展有限公司中电科华云信息技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1