CN114676154A - 数据处理方法和装置、存储介质及电子装置 - Google Patents
数据处理方法和装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN114676154A CN114676154A CN202210169944.6A CN202210169944A CN114676154A CN 114676154 A CN114676154 A CN 114676154A CN 202210169944 A CN202210169944 A CN 202210169944A CN 114676154 A CN114676154 A CN 114676154A
- Authority
- CN
- China
- Prior art keywords
- target
- data processing
- request
- sql
- service data
- 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.)
- Pending
Links
Images
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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- 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/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Abstract
本发明公开了一种数据处理方法和装置、存储介质及电子装置,其中,上述方法包括:获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果,采用上述技术方案,解决了由于需要为每段SQL语句提供一个API接口,导致开发耗时的技术问题。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种数据处理方法和装置、存储介质及电子装置。
背景技术
目前,在对数据库中的数据进行操作时,使用较多的工具是SQL,在使用时需要利用应用程序接口(Application Programming Interface,简称API)对SQL进行封装。
相关技术中,一个业务对应一段SQL语句,因此,需要为每段SQL语句提供一个API接口;在数据可视化场景中,大量的图表对应大量的SQL语句,在利用API对SQL语句进行封装时,需要编写大量的代码,开发耗时,成本高。
针对相关技术中,由于需要为每段SQL语句提供一个API接口,导致开发耗时的技术问题,尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法和装置、存储介质及电子装置,以至少解决相关技术中,由于需要为每段SQL语句提供一个API接口,导致开发耗时的技术问题。
根据本发明实施例的一个实施例,提供了一种数据处理方法,包括:获取业务数据处理请求,其中,上述业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;使用模板引擎动态解析上述请求参数,以得到所要执行的目标SQL语句;调用应用程序接口执行上述目标SQL语句,并返回执行结果,其中,上述执行结果为对上述目标业务数据执行上述目标操作后的结果。
在一个示例性实施例中,上述使用模板引擎动态解析上述请求参数,以得到所要执行的目标SQL语句,包括:使用上述模板引擎动态解析上述请求参数,以确定与上述目标操作对应的查询参数;基于预先绑定的SQL模板中的变量及上述查询参数,生成上述目标SQL语句。
在一个示例性实施例中,在使用上述模板引擎动态解析上述请求参数,以确定与上述目标操作对应的查询参数之后,还包括:按照预先配置的校验规则对上述查询参数进行动态校验。
在一个示例性实施例中,在上述获取业务数据处理请求之前,还包括:在上述模板引擎中配置待使用的SQL模板,其中,上述SQL模板中包括多个查询条件;将上述SQL模板封装为应用程序接口。
在一个示例性实施例中,在上述获取业务数据处理请求之前,还包括:配置用于对SQL语句进行动态校验的校验规则;配置上述目标业务数据在本地数据库的缓存状态。
根据本发明实施例的另一个实施例,还提供了一种数据处理装置,包括:获取模块,用于获取业务数据处理请求,其中,上述业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;解析模块,用于使用模板引擎动态解析上述请求参数,以得到所要执行的目标SQL语句;执行模块,用于调用应用程序接口执行上述目标SQL语句,并返回执行结果,其中,上述执行结果为对上述目标业务数据执行上述目标操作后的结果。
在一个示例性实施例中,上述解析模块包括:解析单元,用于使用上述模板引擎动态解析上述请求参数,以确定与上述目标操作对应的查询参数;生成单元,用于基于预先绑定的SQL模板中的变量及上述查询参数,生成上述目标SQL语句。
在一个示例性实施例中,上述装置还包括:校验模块,用于按照预先配置的校验规则对上述查询参数进行动态校验。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述数据处理方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的数据处理方法。
在本发明实施例中,获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果;采用上述技术方案,通过配置动态SQL模板,并利用模板引擎实现动态SQL解析,从而一个SQL语句实现多种业务操作,减少了API的数量,进而减少了开发耗时,解决了由于需要为每段SQL语句提供一个API接口,导致开发耗时的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的数据处理方法的应用场景的示意图;
图2是根据本发明实施例的一种可选的数据处理方法的流程图;
图3是根据本发明实施例的一种可选的数据处理方法的示意图;
图4是根据本发明实施例的另一种可选的数据处理方法的示意图;
图5是根据本发明实施例的另一种可选的数据处理方法的示意图;
图6是根据本发明实施例的另一种可选的数据处理方法的示意图;
图7是根据本发明实施例的一种可选的数据处理装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种数据处理方法,上述数据处理方法可以但不限于应用于如图1所示的应用场景中。
终端102通过步骤S102向SQL2API平台104发送业务数据处理请求。响应于接收到的业务数据处理请求,SQL2API平台104使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句,并通过步骤S104向服务器106发送目标数据获取请求。服务器106包含数据库108,用于存储数据,响应于接收到的目标数据获取请求,服务器106通过步骤S106返回目标数据。SQL2API平台104接收到服务器106返回的目标后,SQL2API平台104通过步骤S108向终端102返回执行结果。
可选地,上述终端102可以为但不限于手机、平板电脑、笔记本电脑、PC机等终端。上述服务器106可以包括但不限于任何可以进行计算的硬件设备。
在本实施例中提供了一种数据处理方法,图2是根据本发明实施例的数据处理方法的流程图,该流程包括如下步骤:
步骤S202,获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;
步骤S204,使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;
步骤S206,调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果。
可选地,在本实施例中,上述业务数据处理请求可以是通过客户端发送的,也可以是通过第三方系统发送的,在此不作限定。存储目标数据的数据库可以为联机事务处理(On-Line Transaction Processing,简称OLTP)业务模型的数据库,也可以为联机分析处理(On-Line Analytical Processing,简称OLAP)业务模型的数据库,在此不作限定。对待处理的目标业务数据执行目标操作可以但不限于为在数据库中创建Create新的数据,更新Update数据库中的数据,读取Retrieve或查询数据库中的数据,删除Delete数据库中的数据。请求参数的数量可以包括但不限于一个或多个参数;请求参数的类型可以但不限于为文字、图片、音频、视频。
需要说明的是,用于Web开发的模板引擎是为了使用户界面与业务数据分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。SQL模板中包括多个不同执行条件的SQL语句,其中,不同执行条件的SQL语句对应的参数不同;利用模板引擎对请求参数进行解析之后,可以确定与请求参数相对应的目标SQL语句。
可选地,在本实施例中,调用应用程序接口执行目标SQL语句需要用到的与数据库相关的参数可以包括但不限于驱动driver,数据库连接地址url,用户名username,密码password;在连接数据库之前,首先要加载欲连接的数据库的驱动,驱动加载完毕之后,传入欲连接的数据库的地址,数据库的用户名和密码。在需要从数据库拉取数据的情况下,可以但不限于通过游标的方式从数据库拉取数据,并可以但不限于设置最大拉取数据量和TCP连接每次拉取的数据量,从而防止一次拉取大量数据,导致内存溢出。在目标SQL语句为更新数据的语句的情况下,返回的执行结果是本次操作影响到的记录数;在目标SQL语句为查询数据的语句的情况下,返回的执行结果是一个结果集合对象。
通过本申请实施例提供的方案,获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果;采用上述技术方案,通过配置动态SQL模板,并利用模板引擎实现动态SQL解析,从而一个SQL语句实现多种业务操作,减少了API的数量,进而减少了开发耗时,解决了由于需要为每段SQL语句提供一个API接口,导致开发耗时的技术问题。
在一个示例性实施例中,使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句,包括:使用模板引擎动态解析请求参数,以确定与目标操作对应的查询参数;基于预先绑定的SQL模板中的变量及查询参数,生成目标SQL语句。
可选地,在本实施例中,在使用模板引擎动态解析得到查询参数后,可以但不限于将查询参数与SQL模板中的变量进行匹配,并将满足匹配条件的一个或多个SQL语句生成目标SQL语句。
通过本申请实施例提供的方案,通过使用模板引擎动态解析请求参数,减少了API的数量。
在一个示例性实施例中,在使用模板引擎动态解析请求参数,以确定与目标操作对应的查询参数之后,还包括:按照预先配置的校验规则对查询参数进行动态校验。
需要说明的是,为了防止SQL注入,在解析得到查询参数后,可以对查询参数进行动态校验,例如,利用JSON Schema架构实现JSON的定义和校验。当然,也可以通过其他方式来防止SQL注入,例如对SQL语句进行预编译、利用特殊符号,例如,单引‘’,来拼接多个查询参数、确认每种数据的类型、规定数据长度、限制数据库权限、自定义异常响应信息、过滤查询参数中含有的一些数据库关键词等,在此不作限定。可以通过其中一种方式来防止SQL注入,也可以通过两种或两种以上的方式来防止SQL注入,在此不作限定。
通过本申请实施例提供的方案,通过对查询参数进行动态校验,可以防止SQL注入,确保数据的安全性。
在一个示例性实施例中,在获取业务数据处理请求之前,还包括:在模板引擎中配置待使用的SQL模板,其中,SQL模板中包括多个查询条件;将SQL模板封装为应用程序接口。
可选地,在本实施例中,SQL模板可以但不限于按照不同的物质进行划分,例如,可以将与衣服相关的数据配置一个SQL模板,将与食物相关的数据配置为另一个SQL模板。SQL模板中包括的多个查询条件可以按照物质的属性信息来设置,其中,条件参数可以为固定值,也可以为数值范围,在此不作限定。例如,在数据为衣服的SQL模板中,可以将身高160cm设为一个查询条件,也可以将身高160-165cm设为一个查询条件。
通过本申请实施例提供的方案,通过对包括多个查询条件的SQL模板进行API封装,减少了API的数量。
在一个示例性实施例中,在获取业务数据处理请求之前,还包括:配置用于对SQL语句进行动态校验的校验规则;配置目标业务数据在本地数据库的缓存状态。
可选地,在本实施例中,校验规则可以是固定不变的,也可以是周期性动态变化的,在此不作限定。配置目标业务数据在本地数据库的缓存状态可以表示目标业务数据在本地终端缓存的时长,也可以表示目标业务数据在本地终端缓存的数据量的大小,在此不作限定。例如,在存储时长为0的情况下,表示不在本地终端进行缓存;在存储时长不为0的情况下,在数据库返回目标业务数据后,可以将目标业务数据在本地终端缓存预设时长。
通过本申请实施例提供的方案,通过将目标业务数据缓存在本地数据库,可以避免对服务器数据库进行频繁查询操作。
为了更好的理解上述数据处理方法的过程,以下再结合可选实施例对上述数据处理的实现方法进行说明,但不用于限定本发明实施例的技术方案。
在本实施例中提供了一种数据处理方法的系统架构图,如图3所示,外部系统301表示需要调用API的系统,可以是前端页面,第三方系统等网关集群302提供网关服务,具备接口的路由、鉴权、限流等基础功能;SQL2API303表示动态SQL转API服务,将SQL封装成API;数据库304表示存储业务数据的数据库或数仓。外部系统301的请求,经过网关集群302到达SQL2API303服务,SQL2API303利用模板引擎实时解析业务请求参数和SQL模板,得到要执行的SQL语句,调用数据库304中的目标业务数据执行SQL并返回执行结果。
在本实施例中提供了一种数据处理方法的系统架构实现图,如图4所示。
网关集群使用开源的kong实现,kong是使用Openresty技术实现的一个ngnix应用,是ngnix的高性能网关应用,konga提供了一个Web版的可视化界面,可以在页面动态配置实现路由、鉴权、限流等基础网关功能,kong是集群部署的,可以横向无限扩展,应对高并发请求可以动态扩展;
SQL2API使用Serverless平台实现,包括三个弹性函数:
a)查询参数校验函数:对查询参数进行校验,使用JSON Schema实现JSON的定义和校验;
b)动态SQL解析函数:使用模板引擎Freemarker实现动态SQL解析,同时改造模板引擎语法,使其支持防SQL注入;
c)JDBC执行SQL函数:JDBC规范连接执行SQL,包括两种操作,查询和更新,返回结果都是数组,更新操作返回的是一个有一个对象的数据,同时这个对象有一个字段。
数据库指企业数仓:对应企业的两种场景,联机事务处理OLTP和联机分析处理OLAP;
OLTP:对应关系型数据库,直接使用JDBC驱动连接;
OLAP:对应大数据,使用Hadoop生态中的一些查询引擎,提供SQL查询能力,例如dorisDb、ClickHose、Hive、impala等。
下面对上述系统架构实现图进行举例说明。
配置数据源,数据源的核心数据结构如图5所示。配置数据源示例:
1.#impala示例
2.driver=org.apache.hive.jdbc.HiveDriver
3.url=jdbc:hive2://ip:port/database
4.userName=用户名
5.password=密码
6.#mysql示例
7.driver=com.mysql.cj.jdbc.Driver
8.url=jdbc:mysql:///ip:port/database
9.userName=用户名
10.password=密码
配置动态SQL模板,模板规范使用Freemarker模板引擎规则,模板核心数据结构如图6所示。配置动态SQL模板示例:
1.SELECT*FROM order_info
2.WHERE 1=1
3.<#if system??>
4.AND`system`='${system}'
5.</#if>
6.LIMIT 1
定义传入的查询参数,这里绑定动态SQL模板中的变量,查询参数示例:
1.{
2."system":"TM"
3.}
请求API接口:/api/v1/{DataSourceId}/{gid}
DataSourceId是数据源唯一标识;
gid是全局唯一标识,把前端路由、SQL语句关联到一起;
根据以上查询参数执行目标SQL语句为:
1.SELECT*FROM order_info
2.WHERE 1=1
3.AND`system`='TM'
4.LIMIT 1
可以通过设置CachSecond来配置是否缓存;
可以配置查询参数校验规则,使用JSON Schema规范实现。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
图7是根据本发明实施例的一种数据处理装置的结构框图;如图7所示,包括:
获取模块701,用于获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;
解析模块702,用于使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;
执行模块703,用于调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果。
可选地,在本实施例中,上述业务数据处理请求可以是通过客户端发送的,也可以是通过第三方系统发送的,在此不作限定。存储目标数据的数据库可以为联机事务处理(On-Line Transaction Processing,简称OLTP)业务模型的数据库,也可以为联机分析处理(On-Line Analytical Processing,简称OLAP)业务模型的数据库,在此不作限定。对待处理的目标业务数据执行目标操作可以但不限于为在数据库中创建Create新的数据,更新Update数据库中的数据,读取Retrieve或查询数据库中的数据,删除Delete数据库中的数据。请求参数的数量可以包括但不限于一个或多个参数;请求参数的类型可以但不限于为文字、图片、音频、视频。
需要说明的是,用于Web开发的模板引擎是为了使用户界面与业务数据分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。SQL模板中包括多个不同执行条件的SQL语句,其中,不同执行条件的SQL语句对应的参数不同;利用模板引擎对请求参数进行解析之后,可以确定与请求参数相对应的目标SQL语句。
可选地,在本实施例中,调用应用程序接口执行目标SQL语句需要用到的与数据库相关的参数可以包括但不限于驱动driver,数据库连接地址URL,用户名username,密码password;在连接数据库之前,首先要加载欲连接的数据库的驱动,驱动加载完毕之后,传入欲连接的数据库的地址,数据库的用户名和密码。在需要从数据库拉取数据的情况下,可以但不限于通过游标的方式从数据库拉取数据,并可以但不限于设置最大拉取数据量和TCP连接每次拉取的数据量,从而防止一次拉取大量数据,导致内存溢出。在目标SQL语句为更新数据的语句的情况下,返回的执行结果是本次操作影响到的记录数;在目标SQL语句为查询数据的语句的情况下,返回的执行结果是一个结果集合对象。
通过本申请实施例提供的方案,获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果;采用上述技术方案,通过配置动态SQL模板,并利用模板引擎实现动态SQL解析,从而一个SQL语句实现多种业务操作,减少了API的数量,进而减少了开发耗时,解决了由于需要为每段SQL语句提供一个API接口,导致开发耗时的技术问题。
在一个示例性实施例中,上述解析模块包括:解析单元,用于使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句,包括:使用模板引擎动态解析请求参数,以确定与目标操作对应的查询参数;基于预先绑定的SQL模板中的变量及查询参数,生成目标SQL语句。
可选地,在本实施例中,在使用模板引擎动态解析得到查询参数后,可以但不限于将查询参数与SQL模板中的变量进行匹配,并将满足匹配条件的一个或多个SQL语句生成目标SQL语句。
通过本申请实施例提供的方案,通过使用模板引擎动态解析请求参数,减少了API的数量。
在一个示例性实施例中,上述装置还包括:校验模块,用于按照预先配置的校验规则对查询参数进行动态校验。
需要说明的是,为了防止SQL注入,在解析得到查询参数后,可以对查询参数进行动态校验,例如,利用JSON Schema架构实现JSON的定义和校验。当然,也可以通过其他方式来防止SQL注入,例如对SQL语句进行预编译、利用特殊符号,例如,单引号‘’,来拼接多个查询参数、确认每种数据的类型、规定数据长度、限制数据库权限、自定义异常响应信息、过滤查询参数中含有的一些数据库关键词等,在此不作限定。可以通过其中一种方式来防止SQL注入,也可以通过两种或两种以上的方式来防止SQL注入,在此不作限定。
通过本申请实施例提供的方案,通过对查询参数进行动态校验,可以防止SQL注入,确保数据的安全性。
本发明的实施例还提供了一种存储介质,该存储介质包括存储的程序,其中,上述程序运行时执行上述任一项的方法。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;
S2,使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;
S3,调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取业务数据处理请求,其中,业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;
S2,使用模板引擎动态解析请求参数,以得到所要执行的目标SQL语句;
S3,调用应用程序接口执行目标SQL语句,并返回执行结果,其中,执行结果为对目标业务数据执行目标操作后的结果。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取业务数据处理请求,其中,所述业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;
使用模板引擎动态解析所述请求参数,以得到所要执行的目标SQL语句;
调用应用程序接口执行所述目标SQL语句,并返回执行结果,其中,所述执行结果为对所述目标业务数据执行所述目标操作后的结果。
2.根据权利要求1所述的数据处理方法,其特征在于,所述使用模板引擎动态解析所述请求参数,以得到所要执行的目标SQL语句,包括:
使用所述模板引擎动态解析所述请求参数,以确定与所述目标操作对应的查询参数;
基于预先绑定的SQL模板中的变量及所述查询参数,生成所述目标SQL语句。
3.根据权利要求2所述的数据处理方法,其特征在于,在使用所述模板引擎动态解析所述请求参数,以确定与所述目标操作对应的查询参数之后,还包括:
按照预先配置的校验规则对所述查询参数进行动态校验。
4.根据权利要求1所述的数据处理方法,其特征在于,在所述获取业务数据处理请求之前,还包括:
在所述模板引擎中配置待使用的SQL模板,其中,所述SQL模板中包括多个查询条件;
将所述SQL模板封装为应用程序接口。
5.根据权利要求1所述的数据处理方法,其特征在于,在所述获取业务数据处理请求之前,还包括:
配置用于对SQL语句进行动态校验的校验规则;
配置所述目标业务数据在本地数据库的缓存状态。
6.一种数据处理装置,其特征在于,包括:
获取模块,用于获取业务数据处理请求,其中,所述业务数据处理请求中携带有用于对待处理的目标业务数据执行目标操作的请求参数;解析模块,用于使用模板引擎动态解析所述请求参数,以得到所要执行的目标SQL语句;
执行模块,用于调用应用程序接口执行所述目标SQL语句,并返回执行结果,其中,所述执行结果为对所述目标业务数据执行所述目标操作后的结果。
7.根据权利要求6所述的数据处理装置,其特征在于,所述解析模块包括:解析单元,用于使用所述模板引擎动态解析所述请求参数,以确定与所述目标操作对应的查询参数;
生成单元,用于基于预先绑定的SQL模板中的变量及所述查询参数,生成所述目标SQL语句。
8.根据权利要求7所述的数据处理装置,其特征在于,所述装置还包括:校验模块,用于按照预先配置的校验规则对所述查询参数进行动态校验。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至5任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至5任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210169944.6A CN114676154A (zh) | 2022-02-23 | 2022-02-23 | 数据处理方法和装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210169944.6A CN114676154A (zh) | 2022-02-23 | 2022-02-23 | 数据处理方法和装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114676154A true CN114676154A (zh) | 2022-06-28 |
Family
ID=82071590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210169944.6A Pending CN114676154A (zh) | 2022-02-23 | 2022-02-23 | 数据处理方法和装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114676154A (zh) |
-
2022
- 2022-02-23 CN CN202210169944.6A patent/CN114676154A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10839038B2 (en) | Generating configuration information for obtaining web resources | |
US20200351175A1 (en) | Declarative and reactive data layer for component-based user interfaces | |
CN109815261B (zh) | 全局搜索功能实现及数据实时同步方法、装置及电子设备 | |
CN111259036A (zh) | 一种跨库跨表查询方法、设备、服务器及存储介质 | |
CN111310427A (zh) | 业务数据配置处理方法、装置、计算机设备和存储介质 | |
CN111339171A (zh) | 数据查询的方法、装置及设备 | |
CN111818175B (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
CN111124544A (zh) | 界面显示方法、装置、电子设备及存储介质 | |
CN108415998B (zh) | 应用依赖关系更新方法、终端、设备及存储介质 | |
CN110941779A (zh) | 加载页面的方法、装置、存储介质及电子设备 | |
CN116737127A (zh) | 低代码开发方法、装置、设备和存储介质 | |
CN112579118A (zh) | 微服务的配置信息更新方法、装置、系统、介质和设备 | |
CN108959294B (zh) | 一种访问搜索引擎的方法和装置 | |
CN111198678A (zh) | 一种生成GraphQL前端操作接口的方法及装置 | |
CN112434037A (zh) | 数据处理方法、处理装置、数据处理设备和存储介质 | |
US20220229858A1 (en) | Multi-cloud object store access | |
CN114676154A (zh) | 数据处理方法和装置、存储介质及电子装置 | |
CN115858905A (zh) | 数据处理的方法、装置、电子设备和存储介质 | |
CN114840574A (zh) | 数据查询方法、服务器、节点及存储介质 | |
CN112364025B (zh) | 数据处理的方法及装置、电子设备及计算机可读存储介质 | |
CN115495769B (zh) | 一种数据脱敏方法、系统、可读存储介质及设备 | |
CN109933573B (zh) | 数据库业务更新方法、装置及系统 | |
US10275224B1 (en) | Just in time generation system | |
CN111079391B (zh) | 一种报表的生成方法及装置 | |
CN116540982A (zh) | 一种低代码平台融合方法、系统、设备及介质 |
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 |