数据库服务接口发布方法、系统、计算机设备和存储介质与流程

文档序号:30520373发布日期:2022-06-25 04:43阅读:302来源:国知局
数据库服务接口发布方法、系统、计算机设备和存储介质与流程

1.本技术涉及数据处理技术领域,特别是涉及一种数据库服务接口发布方法、系统、计算机设备和存储介质。


背景技术:

2.数据处理技术推动了以数据库技术为基础的信息化进程。在信息化的过程中,各计算机系统积累了大量的信息资源。由于各计算机系统间无法直接通信,为了避免计算机系统成为信息孤岛,出现了数据库服务接口生成技术。各计算机系统通过调用数据库服务接口实现信息的互联互通。
3.传统的数据库服务接口生成方法中,通过选择数据库中的数据表,对数据表中的字段一对一的进行发布,生成数据库服务接口。但是,这种对数据表中的字段一对一的进行发布的方式无法灵活地适应复杂多变的应用场景,因此,有必要提出一种更具灵活性的数据库服务接口发布方法。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够提高灵活性的数据库服务接口发布方法、系统、计算机设备、计算机可读存储介质和计算机程序产品。
5.第一方面,本技术提供了一种数据库服务接口发布方法。所述方法包括:
6.确定待发布的数据库服务接口的目标数据表中的表字段;所述目标数据表是数据库中用于向所述数据库服务接口提供数据支持的数据表;
7.响应于发布字段配置操作,获取与所述表字段具有字段转换关系的目标发布字段以及字段转换函数;所述字段转换关系是基于所述字段转换函数确定的;
8.基于所述数据库服务接口的属性配置信息、所述目标发布字段和所述字段转换函数发布所述数据库服务接口;其中,发布的数据库服务接口被调用时,用于基于所述字段转换函数将从所述目标数据表获取的表字段下的数据映射转换为相应目标发布字段下的数据。
9.在其中一个实施例中,所述响应于发布字段配置操作,获取与所述表字段具有字段转换关系的目标发布字段以及字段转换函数包括:
10.响应于发布字段配置操作,获取针对所述表字段配置的目标发布字段;
11.响应于转换函数确定操作,确定针对所述表字段的字段转换函数,以基于所述字段转换函数将所述表字段与所述目标发布字段进行关联;其中,相关联的表字段和目标发布字段之间具有字段转换关系。
12.在其中一个实施例中,所述响应于发布字段配置操作,获取针对所述表字段配置的目标发布字段包括:
13.响应于发布字段配置操作,获取从所述目标数据表中的表字段中直接映射出的初始发布字段;所述初始发布字段与所述目标数据表中的表字段一一对应;
14.响应于针对所述初始发布字段的字段编辑操作,生成目标发布字段。
15.在其中一个实施例中,在所述响应于发布字段配置操作,获取从所述目标数据表中的表字段中直接映射出的初始发布字段之后包括:
16.响应于针对初始发布字段的字段过滤操作,从表字段中确定敏感字段;
17.滤除与所述敏感字段对应的所述初始发布字段;
18.所述响应于针对所述初始发布字段的字段编辑操作,生成目标发布字段包括:
19.响应于针对剩余的初始发布字段的字段编辑操作,生成目标发布字段。
20.在其中一个实施例中,所述响应于转换函数确定操作,确定针对所述表字段的字段转换函数包括以下任意一种处理:
21.响应于函数选择操作,确定从预置的候选转换函数中选择的字段转换函数;
22.响应于函数自定义操作,获取针对所述表字段自定义配置的字段转换函数。
23.在其中一个实施例中,所述方法还包括数据库服务接口调用步骤;所述数据库服务接口调用步骤包括:
24.响应基于所述属性配置信息针对数据库服务接口发起的接口调用请求,对所述接口调用请求进行验证;所述接口调用请求中携带有服务请求参数;
25.在验证通过之后,根据所述服务请求参数生成查询条件语句,并使用所述查询条件语句从所述目标数据表中查询表字段下的数据;
26.通过所述字段转换函数将所述表字段下的数据映射转换为相应目标发布字段下的数据。
27.在其中一个实施例中,所述方法还包括查询设置步骤;所述查询设置步骤包括:
28.基于针对所述数据库服务接口的查询配置操作,获取配置的预定义查询字段和预定义查询字段对应的预定义查询范围;所述预定义查询字段用于指示从目标数据表中基于预定义查询范围查询表字段的信息;
29.所述响应基于所述属性配置信息针对数据库服务接口发起的接口调用请求,对所述接口调用请求进行验证包括:
30.响应基于所述属性配置信息针对数据库服务接口发起的接口调用请求,获取所述接口调用请求中携带的服务请求参数;所述服务请求参数中包括请求查询字段和相应的请求查询范围;
31.若请求查询字段和请求查询范围分别与预定义查询字段和预定义查询范围相匹配,则判定所述接口调用请求验证通过。
32.第二方面,本技术还提供了一种数据库服务接口发布系统。所述系统包括:
33.接口发布端,用于确定待发布的数据库服务接口的目标数据表中的表字段;所述目标数据表是数据库中用于向所述数据库服务接口提供数据支持的数据表;响应于发布字段配置操作,获取与所述表字段具有字段转换关系的目标发布字段以及字段转换函数;所述字段转换关系是基于所述字段转换函数确定的;基于所述数据库服务接口的属性配置信息、所述目标发布字段和所述字段转换函数将所述数据库服务接口发布至服务器;
34.服务器,用于发布的数据库服务接口被调用时,基于所述字段转换函数将从所述目标数据表获取的表字段下的数据映射转换为相应目标发布字段下的数据。
35.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理
器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本技术所述方法各实施例中的步骤。
36.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本技术所述方法各实施例中的步骤。
37.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本技术所述方法各实施例中的步骤。
38.上述数据库服务接口发布方法、系统、计算机设备、存储介质和计算机程序产品,确定待发布的数据库服务接口的目标数据表中的表字段;目标数据表是数据库中用于向数据库服务接口提供数据支持的数据表;响应于发布字段配置操作,获取与表字段具有字段转换关系的目标发布字段以及字段转换函数;字段转换关系是基于字段转换函数确定的;基于数据库服务接口的属性配置信息、目标发布字段和字段转换函数发布数据库服务接口;其中,发布的数据库服务接口被调用时,用于基于字段转换函数将从目标数据表获取的表字段下的数据映射转换为相应目标发布字段下的数据。对于不同的应用场景,适应性地基于字段转换函数配置目标发布字段与表字段之间的字段转换关系,从而使得发布的数据库服务接口能够适用于多种应用场景,提高了灵活性。
附图说明
39.图1为一个实施例中数据库服务接口发布方法的应用环境图;
40.图2为一个实施例中数据库服务接口发布方法的流程示意图;
41.图3为一个实施例中发布数据库服务接口的流程示意图;
42.图4为一个实施例中表字段与目标发布字段的字段转换关系的示意图;
43.图5为一个实施例中调用数据库服务接口的流程示意图;
44.图6为一个实施例中数据库服务接口发布系统的结构框图;
45.图7为一个实施例中计算机设备的内部结构图;
46.图8为一个实施例中计算机设备的内部结构图。
具体实施方式
47.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
48.本技术实施例提供的数据库服务接口发布方法,可以应用于如图1所示的应用环境中。其中,接口发布端102和接口调用端106通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。接口发布端102可以确定待发布的数据库服务接口的目标数据表中的表字段。接口发布端102可以响应于发布字段配置操作,获取与表字段具有字段转换关系的目标发布字段以及字段转换函数。接口发布端102可以基于数据库服务接口的属性配置信息、目标发布字段和字段转换函数将数据库服务接口发布至服务器104。接口调用端106可以调用发布的数据库服务接口,服务器104可以基于字段转换函数将从目标数据表
获取的表字段下的数据映射转换为相应目标发布字段下的数据。其中,接口发布端102和接口调用端106可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
49.在一个实施例中,如图2所示,提供了一种数据库服务接口发布方法,该方法可以通过图1中的接口发布端、接口调用端和服务器之间的交互实现,包括以下步骤:
50.步骤202,确定待发布的数据库服务接口的目标数据表中的表字段。
51.其中,目标数据表是数据库中用于向数据库服务接口提供数据支持的数据表。表字段是指目标数据表中的字段。可以理解,数据库中的数据表与我们日常生活中使用的表格类似,它也是由行(row)和列(column)组成的。列由同类的数据组成,每列为一个字段,每列的标题为字段名。行包括了若干列数据项。一行数据称为一个或一条记录,它表达有一定意义的信息组合。一个数据表由一条或多条记录组成。
52.具体地,接口发布对象可以通过接口发布端进行数据库服务接口发布操作。接口发布对象可以针对数据库中的数据表进行表选择操作,选择待发布的数据库服务接口的目标数据表,接口发布端可以响应于表选择操作确定目标数据表中的表字段。其中,接口发布端是用于进行数据库服务接口发布处理的终端。接口发布对象是通过接口发布端进行数据库接口发布操作的对象。
53.在一个实施例中,接口发布端可以向接口发布对象提供数据源信息。其中,数据源是指数据的来源,是提供数据的器件或原始媒体。数据源中存储了所有建立数据库连接的信息。接口发布对象可以在通过接口发布端选择数据源中的数据库之后,再选择数据库中的数据表,接口发布端可以将接口发布对象选择的数据表作为目标数据表。
54.步骤204,响应于发布字段配置操作,获取与表字段具有字段转换关系的目标发布字段以及字段转换函数。
55.其中,字段转换关系是基于字段转换函数确定的。字段转换关系是指表字段与目标发布字段之间的转换关系。可以理解,表字段实质上是目标数据表中的原始字段,目标发布字段实质上是通过数据库服务接口对外发布的字段。字段配置操作是指配置目标发布字段的操作。字段转换函数是指用于将表字段下的数据映射转换为相应目标发布字段下的数据的函数。
56.具体地,接口发布端可以展示目标数据表中的表字段,接口发布对象可以基于表字段进行配置目标发布字段的操作,接口发布端可以响应于发布字段配置操作,获取与表字段具有字段转换关系的目标发布字段以及字段转换函数。
57.步骤206,基于数据库服务接口的属性配置信息、目标发布字段和字段转换函数发布数据库服务接口。
58.其中,发布的数据库服务接口被调用时,用于基于字段转换函数将从目标数据表获取的表字段下的数据映射转换为相应目标发布字段下的数据。属性配置信息是用于配置数据库服务接口的信息。
59.具体地,接口发布对象可以通过接口发布端对数据库服务接口进行属性配置操作,接口发布端可以获取数据库服务接口的属性配置信息。接口发布端可以基于数据库服
务接口的属性配置信息、目标发布字段和字段转换函数发布数据库服务接口。
60.在一个实施例中,属性配置信息可以包括数据库服务接口的名称、服务访问地址、接口编码、版本号和所属应用等信息。
61.在一个实施例中,接口发布对象可以通过接口发布端定义数据库服务接口的服务协议、安全认证方式、请求方式、超时时间、是否支持返回数据缓存及缓存时长和返回数据的格式等。其中,服务协议可以包括http和https中的至少一种。https(hypertext transfer protocol over secure socket layer)是基于安全套接字协议(ssl,secure sockets layer)的超文本传输协议(http,hyper text transfer protocol)。安全认证方式可以包括基础(basic)认证和应用(app)认证中的至少一种。请求方式可以包括get(取)和post(提交)中的至少一种。get是从指定的资源请求数据。post是向指定的资源提交要被处理的数据。
62.在一个实施例中,数据服务接口的属性配置信息中包括所属应用的信息。接口调用端可以针对数据服务接口发起接口调用请求,服务器可以对接口调用请求中携带的应用信息进行app认证。可以理解,非数据服务接口所属应用无法通过app认证,从而保证数据服务接口调用的安全性。
63.在一个实施例中,如图3所示的发布数据库服务接口的流程图。接口发布对象可以通过接口发布端填写数据库服务接口的名称和服务地址,以及选择数据库服务接口的服务协议和安全认证方式。接口发布对象可以在选择数据源之后,选择目标数据表。接口发布端可以确定目标数据表中的表字段,接口发布对象可以通过接口发布端基于表字段配置目标发布字段。接口发布对象可以发布数据库服务接口,接口发布端可以根据目标发布字段、属性配置信息和字段转换函数发布数据库服务接口。在数据库服务接口测试通过之后,接口发布对象可以通过接口发布端上线数据库服务接口。
64.上述数据库服务接口发布方法中,确定待发布的数据库服务接口的目标数据表中的表字段;目标数据表是数据库中用于向数据库服务接口提供数据支持的数据表;响应于发布字段配置操作,获取与表字段具有字段转换关系的目标发布字段以及字段转换函数;字段转换关系是基于字段转换函数确定的;基于数据库服务接口的属性配置信息、目标发布字段和字段转换函数发布数据库服务接口;其中,发布的数据库服务接口被调用时,用于基于字段转换函数将从目标数据表获取的表字段下的数据映射转换为相应目标发布字段下的数据。对于不同的应用场景,能够适应性地基于字段转换函数配置目标发布字段与表字段之间的字段转换关系,从而使得发布的数据库服务接口能够适用于多种应用场景,提高了发布数据库服务接口的灵活性。
65.在一个实施例中,响应于发布字段配置操作,获取与表字段具有字段转换关系的目标发布字段以及字段转换函数包括:响应于发布字段配置操作,获取针对表字段配置的目标发布字段;响应于转换函数确定操作,确定针对表字段的字段转换函数,以基于字段转换函数将表字段与目标发布字段进行关联;其中,相关联的表字段和目标发布字段之间具有字段转换关系。
66.其中,转换函数确定操作是用于确定字段转换函数的操作。
67.具体地,接口发布端可以展示目标数据表中的表字段,并响应于发布字段配置操作,获取针对表字段配置的目标发布字段。接口发布对象可以通过接口发布端进行转换函
数确定操作,接口发布端可以响应于转换函数确定操作,确定针对表字段的字段转换函数,以基于字段转换函数将表字段与目标发布字段进行关联。
68.本实施例中,响应于发布字段配置操作,获取针对表字段配置的目标发布字段;响应于转换函数确定操作,确定针对表字段的字段转换函数,以基于字段转换函数将表字段与目标发布字段进行关联,实现表字段下的数据到目标字段下的数据的灵活转换。
69.在一个实施例中,响应于发布字段配置操作,获取针对表字段配置的目标发布字段包括:响应于发布字段配置操作,获取从目标数据表中的表字段中直接映射出的初始发布字段;初始发布字段与目标数据表中的表字段一一对应;响应于针对初始发布字段的字段编辑操作,生成目标发布字段。
70.其中,初始发布字段是默认从目标数据表中的表字段中直接映射出的发布字段。可以理解,未经过编辑的初始发布字段与表字段是完全一致的。
71.具体地,接口发布端可以以列表的形式展示目标数据表中的所有表字段和表字段的基本信息。接口发布端可以响应于发布字段配置操作,获取从目标数据表中的表字段中直接映射出的初始发布字段。接口发布端可以展示所有初始发布字段,并响应于针对初始发布字段的字段编辑操作,生成目标发布字段。
72.在一个实施例中,字段编辑操作可以包括字段新增操作、字段重命名操作和字段删除操作等操作中的至少一种。
73.在一个实施例中,接口发布对象可以修改初始发布字段对应的表字段。
74.在一个实施例中,如图4所示的表字段与目标发布字段的字段转换关系。目标数据表可以是员工信息表。员工信息表中的表字段包括员工标识号、员工姓名、身份证号码、岗位、职责、入职日期和薪资。从表字段直接映射出的初始发布字段也包括员工标识号、员工姓名、身份证号码、岗位、职责、入职日期和薪资。接口发布对象可以针对初始发布字段进行字段删除操作,接口发布端可以响应于该字段删除操作,删除相应的初始发布字段。比如,接口发布对象可以删除职责和薪资这两个初始发布字段。接口发布对象可以针对初始发布字段进行字段重命名操作,接口发布端可以响应于该字段重命名操作,重命名相应的初始发布字段。接口发布对象可以针对初始发布字段进行字段新增操作,接口发布端可以响应于该字段新增操作,新增发布字段。比如,接口发布对象可以针对身份证号码这一初始发布字段进行新增发布字段,得到目标发布字段性别、出生日期和年龄。可以理解,性别、出生日期和年龄数据均可以从身份证号码的数据中映射转换出来。未被编辑的初始发布字段可以直接作为目标发布字段。接口发布对象可以从无到有地新增目标发布字段。比如,接口发布对象可以从无到有地新增工龄这一目标发布字段,并配置目标发布字段工龄与表字段入职日期的字段转换关系。
75.本实施例中,响应于发布字段配置操作,获取从目标数据表中的表字段中直接映射出的初始发布字段;响应于针对初始发布字段的字段编辑操作,生成目标发布字段,无需针对表字段手动配置初始发布字段,从而能够更加便捷地发布数据服务接口。
76.在一个实施例中,响应于发布字段配置操作,获取从目标数据表中的表字段中直接映射出的初始发布字段之后包括:响应于针对初始发布字段的字段过滤操作,从表字段中确定敏感字段;滤除与敏感字段对应的初始发布字段;响应于针对初始发布字段的字段编辑操作,生成目标发布字段包括:响应于针对剩余的初始发布字段的字段编辑操作,生成
目标发布字段。
77.具体地,接口发布对象可以通过接口发布端过滤掉敏感字段对应的初始发布字段。比如,在员工信息表中员工的职责和薪资这两个表字段是敏感字段,接口发布端可以过滤掉职责和薪资这两个初始发布字段。接口发布对象可以通过接口发布端针对过滤后剩余的初始发布字段进行字段新增操作和字段重命名操作等操作,生成目标发布字段。
78.在一个实施例中,目标数据表中的表字段可以预先被标注为敏感和不敏感中的一种。可以理解,敏感字段下的数据不宜公开。接口发布端可以响应接口发布对象的字段过滤操作,过滤掉与敏感字段对应的初始发布字段。
79.在一个实施例中,接口发布对象可以通过接口发布端进行字段删除操作,手动过滤掉初始发布字段。
80.本实施例中,通过字段过滤操作便捷地过滤掉敏感字段对应的初始发布字段,能够保证敏感字段下的数据的安全性。
81.在一个实施例中,响应于转换函数确定操作,确定针对表字段的字段转换函数包括以下任意一种处理:响应于函数选择操作,确定从预置的候选转换函数中选择的字段转换函数;响应于函数自定义操作,获取针对表字段自定义配置的字段转换函数。
82.其中,函数选择操作是用于选择字段转换函数的操作。函数自定义操作是用于自定义字段转换函数的操作。
83.具体地,接口发布对象可以通过接口发布端从预置的候选转换函数中选择字段转换函数。接口发布对象可以通过接口发布端进行函数自定义操作,编写字段转换函数的程序脚本,接口发布端可以获取针对表字段自定义配置的字段转换函数。可以理解,数据库服务接口被调用时,服务器可以通过运行接口发布对象编写的程序脚本执行字段转换函数。
84.在一个实施例中,接口发布对象可以使用基于虚拟机的敏捷开发语言编写字段转换函数的程序脚本。比如,groovy语言。groovy是用于java虚拟机的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。java虚拟机(java virtual machine,简称jvm)是运行所有java程序的抽象计算机,是java语言的运行环境。java是一门面向对象编程语言。
85.在一个实施例中,接口发布端可以将当前数据库服务接口发布时自定义配置的字段转换函数作为下一数据库服务接口发布时的候选转换函数。可以理解,预置的候选转换函数均存储在函数库中,接口发布终端可以将自定义配置的字段转换函数存储至函数库中。其中,函数库可以设置在终端。函数库也可以设置在服务器。
86.本实施例中,不仅能够直接从预置的候选转换函数中选择字段转换函数,而且能够针对表字段自定义配置字段转换函数,适应多种应用场景,从而进一步地提高发布数据库服务接口的灵活性。
87.在一个实施例中,方法还包括数据库服务接口调用步骤;数据库服务接口调用步骤包括:响应基于属性配置信息针对数据库服务接口发起的接口调用请求,对接口调用请求进行验证;接口调用请求中携带有服务请求参数;在验证通过之后,根据服务请求参数生成查询条件语句,并使用查询条件语句从目标数据表中查询表字段下的数据;通过字段转换函数将表字段下的数据映射转换为相应目标发布字段下的数据。
88.具体地,接口调用端可以响应于接口调用对象针对数据服务接口的接口调用操
作,基于配置属性信息向服务器发起接口调用请求,服务器可以响应该接口调用请求,对接口调用请求进行验证。在验证通过之后,服务器可以根据服务请求参数生成查询条件语句,并使用查询条件语句从目标数据表中查询表字段下的数据。服务器可以通过字段转换函数将表字段下的数据映射转换为相应目标发布字段下的数据,并将目标发布字段下的数据返回至接口调用端。
89.在一个实施例中,接口调用端可以针对数据库服务接口的服务地址发起接口调用请求。比如,接口调用端可以利用地址传参的方式,将服务请求参数写入服务地址得到服务请求地址。接口调用请求中包括服务请求地址,服务器可以解析服务请求地址,获取服务请求参数,并对服务请求参数进行验证。可以理解,接口调用端可以通过调用发布的服务地址,并携带服务请求参数即可进行数据库服务接口的调用。
90.本实施例中,对接口调用请求进行验证,在验证通过之后,根据服务请求参数生成查询条件语句,并使用查询条件语句从目标数据表中查询表字段下的数据,通过字段转换函数将表字段下的数据映射转换为相应目标发布字段下的数据,从而能够在实现表字段与目标发布字段灵活转换的同时,保证了安全性。
91.在一个实施例中,方法还包括查询设置步骤;查询设置步骤包括:基于针对数据库服务接口的查询配置操作,获取配置的预定义查询字段和预定义查询字段对应的预定义查询范围;预定义查询字段用于指示从目标数据表中基于预定义查询范围查询表字段的信息;响应基于属性配置信息针对数据库服务接口发起的接口调用请求,对接口调用请求进行验证包括:响应基于属性配置信息针对数据库服务接口发起的接口调用请求,获取接口调用请求中携带的服务请求参数;服务请求参数中包括请求查询字段和相应的请求查询范围;若请求查询字段和请求查询范围分别与预定义查询字段和预定义查询范围相匹配,则判定接口调用请求验证通过。
92.其中,请求查询字段和请求查询范围是接口调用端请求查询的字段和范围。
93.具体地,在配置目标发布字段时,接口发布对象可以通过接口发布端针对数据库服务接口进行查询配置操作,接口发布端可以获取配置的预定义查询字段和预定义查询字段对应的预定义查询范围。在调用数据库服务接口时,服务器可以响应基于属性配置信息针对数据库服务接口发起的接口调用请求,获取接口调用请求中携带的服务请求参数。服务器可以对服务请求参数中的请求查询字段和相应的请求查询范围进行验证,若请求查询字段和请求查询范围分别与预定义查询字段和预定义查询范围相匹配,则判定接口调用请求验证通过。其中,查询条件语句是sql语句。sql(structured query language)是结构化查询语言。
94.在一个实施例中,如图5中所示的调用数据库服务接口的流程。接口调用端可以按照属性配置信息中定义的服务协议和请求方式发起接口调用请求。比如,若服务协议是超文本传输协议(http),则接口调用端可以发起http请求,服务器可以返回http响应内容。服务器可以解析出接口调用请求中携带的服务请求参数,并验证服务请求参数。服务器可以根据服务请求参数生成查询条件语句,并利用查询条件语句从目标数据表中查询表字段下的数据。其中,查询数据符合请求查询字段和请求查询范围所限定的查询条件。服务器按照预先配置的字段转换函数,将查询到的表字段下的数据转换成目标发布字段下的数据。服务器可以将映射转换出的数据封装成http响应内容,并返回至接口调用端。可以理解,若预
定义查询字段与相应表字段不完全一致,则需要将与预定义查询字段一致的请求查询字段转换成相应表字段,以生成查询条件语句。比如,预定义查询字段是工资,而相应表字段是薪资,则需要将请求查询字段从工资转换成薪资生成查询条件语句,以利用该查询条件语句查询薪资字段下的数据。
95.如下流程图说明了调用数据库服务api的过程,首先进行服务请求参数的解析,然后提取各个传入的请求参数;接着对参数进行校验,验证各个参数是否合法,以及取值范围是否在预设的合理范围之内,并对其进行sql注入校验;然后进行请求参数的映射、转换,生成目标数据库的查询sql语句,根据数据源的配置信息,对目标数据库进行sql查询;当目标结果返回后,根据设定的处理/转换函数,对结果集进行封装处理,生成响应的报文,并返回给服务调用请求方。
96.本实施例中,基于针对数据库服务接口的查询配置操作,获取配置的预定义查询字段和预定义查询字段对应的预定义查询范围;服务请求参数中包括请求查询字段和相应的请求查询范围;若请求查询字段和请求查询范围分别与预定义查询字段和预定义查询范围相匹配,则判定接口调用请求验证通过。通过预定义查询范围和预定义查询字段控制访问的数据范围,能够避免查询数据的越界、大量返回数据导致的接口访问压力,以及安全事故的发生。
97.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
98.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的数据库服务接口发布方法的数据库服务接口发布系统。该系统所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据库服务接口发布系统实施例中的具体限定可以参见上文中对于数据库服务接口发布方法的限定,在此不再赘述。
99.在一个实施例中,如图6所示,提供了一种数据库服务接口发布系统600,包括:接口发布端602和服务器604,其中:
100.接口发布端602,用于确定待发布的数据库服务接口的目标数据表中的表字段;目标数据表是数据库中用于向数据库服务接口提供数据支持的数据表;响应于发布字段配置操作,获取与表字段具有字段转换关系的目标发布字段以及字段转换函数;字段转换关系是基于字段转换函数确定的;基于数据库服务接口的属性配置信息、目标发布字段和字段转换函数将数据库服务接口发布至服务器604。
101.服务器604,用于发布的数据库服务接口被调用时,基于字段转换函数将从目标数据表获取的表字段下的数据映射转换为相应目标发布字段下的数据。
102.在一个实施例中,接口发布端602,还用于响应于发布字段配置操作,获取针对表字段配置的目标发布字段;响应于转换函数确定操作,确定针对表字段的字段转换函数,以基于字段转换函数将表字段与目标发布字段进行关联;其中,相关联的表字段和目标发布
字段之间具有字段转换关系。
103.在一个实施例中,接口发布端602,还用于响应于发布字段配置操作,获取从目标数据表中的表字段中直接映射出的初始发布字段;初始发布字段与目标数据表中的表字段一一对应;响应于针对初始发布字段的字段编辑操作,生成目标发布字段。
104.在一个实施例中,接口发布端602,还用于响应于针对初始发布字段的字段过滤操作,从表字段中确定敏感字段;滤除与敏感字段对应的初始发布字段;响应于针对剩余的初始发布字段的字段编辑操作,生成目标发布字段。
105.在一个实施例中,接口发布端602,还用于响应于函数选择操作,确定从预置的候选转换函数中选择的字段转换函数;响应于函数自定义操作,获取针对表字段自定义配置的字段转换函数。
106.在一个实施例中,服务器604,还用于响应基于属性配置信息针对数据库服务接口发起的接口调用请求,对接口调用请求进行验证;接口调用请求中携带有服务请求参数;在验证通过之后,根据服务请求参数生成查询条件语句,并使用查询条件语句从目标数据表中查询表字段下的数据;通过字段转换函数将表字段下的数据映射转换为相应目标发布字段下的数据。
107.在一个实施例中,接口发布端602,还用于基于针对数据库服务接口的查询配置操作,获取配置的预定义查询字段和预定义查询字段对应的预定义查询范围;预定义查询字段用于指示从目标数据表中基于预定义查询范围查询表字段的信息;服务器604,还用于响应基于属性配置信息针对数据库服务接口发起的接口调用请求,获取接口调用请求中携带的服务请求参数;服务请求参数中包括请求查询字段和相应的请求查询范围;若请求查询字段和请求查询范围分别与预定义查询字段和预定义查询范围相匹配,则判定接口调用请求验证通过。
108.上述数据库服务接口发布系统中的各个设备可全部或部分通过软件、硬件及其组合来实现。上述各设备可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个设备对应的操作。
109.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口(input/output,简称i/o)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储发布数据库服务接口相关数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据库服务接口发布方法。
110.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单
元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据库服务接口发布方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
111.本领域技术人员可以理解,图7和图8中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
112.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
113.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
114.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
115.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
116.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
117.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
118.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1