一种将SQL语句转换为HTTP接口的方法、系统和可读介质与流程

文档序号:36009223发布日期:2023-11-17 01:39阅读:76来源:国知局
一种将的制作方法

本发明涉及一种将sql语句转换为http接口的方法、系统和可读介质,属于软件系统开发。


背景技术:

1、在软件系统开发过程中,后端服务接口开发是最常见开发工作之一。前后端之间的数据交互、微服务各模块之间的数据传输,都需要依赖于后端服务接口进行通讯和数据交互;因此,后端服务接口的开发效率在很大程度上影响了软件系统的开发交付效率。

2、在传统的java后端服务接口开发过程中一般都是基于ssh、ssm等框架进行开发,需要定义controller、service、dao、mapper、xml、vo等一系列java对象和业务逻辑代码编写,才能开发出一套http接口,导致重复工作增多,开发周期变长。且每个开发者都可以选择自己的接口方案,可能造成后端服务接口缺乏文档和规范化,导致协作和理解上的问题,进一步降低员工的开发效率。


技术实现思路

1、针对上述问题,本发明的目的是提供了一种将sql语句转换为http接口的方法、系统和可读介质,其无需定义controller、service、dao、mapper、xml或vo等一系列java对象和业务逻辑代码编写,就能够完成常见的http接口接口开发。

2、为实现上述目的,本发明提出了以下技术方案:一种将sql语句转换为http接口的方法,包括:编写sql语句,并对所述sql语句进行自动解析;将经过自动解析的所述sql语句输入作为http接口的输入参数,通过词语解析获得输入的sql语句的变量,并将所述变量替换为具体值;根据经过变量替换的sql语句的具体内容,连接数据库或者对所述sql语句进行改写;执行改写后的所述sql语句,根据执行结果进行结果集映射,最终通过统一的http接口在前端响应。

3、进一步,所述sql语句包括查询语句、缓存语句、分页语句和自定义排序语句,将经过自动解析的所述sql语句输入作为http接口的输入参数,判断所述sql语句是否缓存语句,若存在缓存语句则直接结束,若不存在则对所述sql语句进行变量替换。

4、进一步,所述变量替换时,通过输入参数替换变量的所述具体值,所述输入参数包括sql语句标识和变量值。

5、进一步,若所述变量为非预编译变量则直接采用所述具体值替换所述变量;若所述变量为预编译变量则采用占位符替换所述变量。

6、进一步,若所述sql语句为查询sql语句则连接数据库,若所述sql语句为分页语句和自定义排序语句,则通过对所述sql语句进行语法解析,并根据所述语法解析对所述sql语句进行改写,根据不同的数据库引擎改写对应的分页sql部分和自定义排序sql部分。

7、进一步,对所述sql语句进行自动解析包括:sql语法检查、变量替换和在线调试执行。

8、进一步,若所述sql语句为多个,则对所述sql语句进行编排。

9、进一步,对所述sql语句进行编排的方法为:将多个所述sql语句输入作为http接口的输入参数,根据所述输入参数对所述sql语句进行变量替换和改写,将经过改写的sql语句作为输入参数对下一个sql语句进行变量替换和改写,直至变量所有的sql语句后,从http接口输出。

10、本发明还公开了一种将sql语句转换为http接口的系统,包括:语句编写模块,用于编写sql语句,并对所述sql语句进行自动解析;sql语句处理模块,用于将经过自动解析的所述sql语句输入作为http接口的输入参数,通过词语解析获得输入的sql语句的变量,并将所述变量替换为具体值;sql语句改写模块,用于根据经过变量替换的sql语句的具体内容,连接数据库或者对所述sql语句进行改写;sql语句执行模块,用于执行改写后的所述sql语句,根据执行结果进行结果集映射,最终通过统一的http接口在前端响应。

11、本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行以实现上述任一项所述的将sql语句转换为http接口的方法。

12、本发明由于采取以上技术方案,其具有以下优点:

13、本发明中方案是一个基于java的后端服务接口快速开发方法,编写接口将通过提供的ui界面完成,自动将sql语句映射为http接口,且支持多个sql语句之间的逻辑编排,无需定义controller、service、dao、mapper、xml、vo等一系列java对象和业务逻辑代码编写,即可完成常见的http接口接口开发,ui界面接口定义即文档,使用统一访问入口,同时使用ui界面编写接口具有相关规范约束,也保证接口的规范化,需要开发人员编写的只有sql语句,极大的提升开发效率。

14、本方案区别于其他的代码生成器方案,在将sql语句映射为http接口接口的过程中不用生成中间代码,sql语句定义、编排完成即可发布使用,支持多种数据库引擎,直接使用原生jdbc(java database connectivity)进行操作,保证服务接口执行效率。



技术特征:

1.一种将sql语句转换为http接口的方法,其特征在于,包括:

2.如权利要求1所述的将sql语句转换为http接口的方法,其特征在于,所述sql语句包括查询语句、缓存语句、分页语句和自定义排序语句,将经过自动解析的所述sql语句输入作为http接口的输入参数,判断所述sql语句是否缓存语句,若存在缓存语句则直接结束,若不存在则对所述sql语句进行变量替换。

3.如权利要求2所述的将sql语句转换为http接口的方法,其特征在于,所述变量替换时,通过输入参数替换变量的所述具体值,所述输入参数包括sql语句标识和变量值。

4.如权利要求3所述的将sql语句转换为http接口的方法,其特征在于,若所述变量为非预编译变量则直接采用所述具体值替换所述变量;若所述变量为预编译变量则采用占位符替换所述变量。

5.如权利要求2所述的将sql语句转换为http接口的方法,其特征在于,若所述sql语句为查询sql语句则连接数据库,若所述sql语句为分页语句和自定义排序语句,则通过对所述sql语句进行语法解析,并根据所述语法解析对所述sql语句进行改写,根据不同的数据库引擎改写对应的分页sql部分和自定义排序sql部分。

6.如权利要求1-5任一项所述的将sql语句转换为http接口的方法,其特征在于,对所述sql语句进行自动解析包括:sql语法检查、变量替换和在线调试执行。

7.如权利要求1-5任一项所述的将sql语句转换为http接口的方法,其特征在于,若所述sql语句为多个,则对所述sql语句进行编排。

8.如权利要求7所述的将sql语句转换为http接口的方法,其特征在于,对所述sql语句进行编排的方法为:

9.一种将sql语句转换为http接口的系统,其特征在于,包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1-8任一项所述的将sql语句转换为http接口的方法。


技术总结
本发明属于软件系统开发技术领域,一种将SQL语句转换为HTTP接口的方法、系统和可读介质,包括:编写SQL语句,并对所述SQL语句进行自动解析;将经过自动解析的所述SQL语句输入作为HTTP接口的输入参数,通过词语解析获得输入的SQL语句的变量,并将所述变量替换为具体值;根据经过变量替换的SQL语句的具体内容,连接数据库或者对所述SQL语句进行改写;执行改写后的所述SQL语句,根据执行结果进行结果集映射,最终通过统一的HTTP接口在前端响应。本发明中方案无需定义Controller、Service、Dao、Mapper、XML或VO等一系列Java对象和业务逻辑代码编写,就能够完成常见的HTTP接口接口开发。

技术研发人员:王伟哲,付威,孔奇
受保护的技术使用者:北京东方金信科技股份有限公司
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1