网站开发文档模板 开源,网站建设与优化推广方案内容,修改wordpress数据库,北京专业英文网站建设【REST2SQL】01RDB关系型数据库REST初设计 【REST2SQL】02 GO连接Oracle数据库 【REST2SQL】03 GO读取JSON文件 【REST2SQL】04 REST2SQL第一版Oracle版实现 【REST2SQL】05 GO 操作 达梦 数据库 【REST2SQL】06 GO 跨包接口重构代码 【REST2SQL】07 GO 操作 Mysql 数据库 【RE…【REST2SQL】01RDB关系型数据库REST初设计 【REST2SQL】02 GO连接Oracle数据库 【REST2SQL】03 GO读取JSON文件 【REST2SQL】04 REST2SQL第一版Oracle版实现 【REST2SQL】05 GO 操作 达梦 数据库 【REST2SQL】06 GO 跨包接口重构代码 【REST2SQL】07 GO 操作 Mysql 数据库 【REST2SQL】08 日志重构增加输出到文件log.txt 【REST2SQL】09 给Go的可执行文件exe加图标和版本信息等 【REST2SQL】从设计到现学Go到实现大约一个多月的时间为了致敬费曼学习法通过自己的语言用最简单的话把一件事向别人讲清楚并且让外行人也能听懂。这一段时间输出了不少博文主要目的是自己的学习过程记录一下。年龄大了脑子记不住了需要的时候再回头看看。 REST2SQL核心功能就是连接数据库即可提供REST和SQL的CRUD服务。在config.json里设置数据库连接字符串及服务端口等参数REST服务提供POST、GET、PUT、DELETE4种请求SQL服务可执行INSERT、SELECT、UPDATE、DELETE4种SQL语句请求结果返回JSON字符串以后加上JSON SCHEMA。开启REST2SQL服务后台数据服务基本能覆盖到了可以作为后端服务单独部署。 REST2SQL可以作为内部开发的运维工具也可以对外提供REST服务后端开发再也没有CRUD重复开发的烦恼。
0 我的开发测试环境
项目版本操作系统Windows 10 家庭中文版4 位操作系统, 基于 x64 的处理器编程语言Go 1.21.5OracleOracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit ProductionDMDM Database Server 64 V8 DB Version: 0x7000cMySQL8.0.35 MySQL Community Server - GPL x86_6 Win64浏览器Microsoft Edge 120.0.2210.133 (正式版本) (64 位)Curl8.0.1 (Windows) libcurl/8.0.1 Schannel WinIDN Release-Date: 2023-03-20PostmanDecember 2023 (v10.21)
1 REST2SQL文件
REST2SQL采用Go语言开发编译只有4个文件一个配置文件config.json,一个可执行文件rest2sql.exe另外两个为操作指南。
2 REST2SQL配置config.json
用记事本打开config.json可配置REST2SQL,最重要是的数据库连接字符串connString。文件内容如下
{hostPort:localhost:5217,connString:mysql://blma:5217(127.0.0.1:3306)/blma,_oracle:oracle://blma:5217127.0.0.1:1521/CQYH,_dm:dm://BLMA:dameng5217127.0.0.1:5236/BLMA,_mysql:mysql://blma:5217(127.0.0.1:3306)/blma,_mssql:mssql://,_postgresql:postgresql://,REST:GET,POST,PUT,DELETE, _REST:GET,POST,PUT,DELETE, SQL:SELECT,_SQL:SELECT,INSERT,UPDATE,DELETE}hostPort 配置服务监听端口。connString 配置数据库连接字符串下面有_oracle、_dm、_mysql的配置范例目前支持这三种数据库以后还会扩展。REST 配置可允许的REST请求可在GET、POST、PUT、DELETE中选配默认全部。SQL 配置可允许执行的SQL语句可在SELECT、INSERT、UPDATE、DELETE中选配默认SELECT
3 启动REST2SQL服务
Windows系统下双击rest2sql.exe即可启动服务启动成功后显示如下信息 第一行为当前启动的配置信息第二行为监听启动成功。
2024/01/12 10:57:32 config:{mysql mysql://blma:5217(127.0.0.1:3306)/blma localhost:5217 GET,POST,PUT,DELETE SELECT}
2024/01/12 10:57:32 Starting Http Server at localhost:5217关闭此控制台窗口就停止提供服务。
4 REST请求操作
config.json文件里配置 REST项可以开启REST服务请求。只支持GET、POST、PUT、DELETE请求可以设置0-4个请求0个就是关闭REST请求。 REST:GET,POST,PUT,DELETE, _REST:GET,POST,PUT,DELETE, 4.1 GET请求
get请求支持where和orderby查询条件。
1.curl请求
curl http://127.0.0.1:5217/rest/kezz
curl http://127.0.0.1:5217/rest/kezz/?wheren_zzxj%3E300
curl http://127.0.0.1:5217/rest/kezz/?orderbyp_id
curl http://127.0.0.1:5217/rest/kezz/?wheren_zzxj%3E300orderbyp_id
curl http://127.0.0.1:5217/rest/kezz/?orderbyp_idwheren_zzxj%3E3002. edge浏览器请求 3.Postman请求
4.2 POST请求
POST请求url定位要请求的表在加上data即可。
1.Postman请求
2.curl请求 注意windows 10的curl 双引号需要转义\
curl -X POST http://127.0.0.1:5217/rest/kezz --data {\p_id\:-300,\s_dm\:\200300\,\s_mc\:\REST3\}4.3 PUT请求
url加where定位要更新的记录。 1.Postman请求
2.curl请求
curl -X PUT http://127.0.0.1:5217/rest/kezz/?wherep_id-200 --data {\s_mc\:\CURL\}4.4 DELETE请求
url加where定位要删除的记录。 1.Postman请求
2.curl请求
curl -X DELETE http://127.0.0.1:5217/rest/kezz/?wherep_id-200 5 SQL执行操作
config.json文件里配置 SQL项可以开启SQL服务请求。只支持SELECT,INSERT,UPDATE,DELETE请求可以设置0-4个请求0个就是关闭SQL请求。 默认设置只能执行SELECT。 URL栏可以直接输入SQL即可执行。
5.1 执行SELECT语句
http://127.0.0.1:5217/sql/select * from kezz5.2 执行INSERT语句
http://127.0.0.1:5217/sql/insert into kezz (p_id,s_dm,s_mc) values (-400,400400,SQL)5.3 执行UPDATE语句
http://127.0.0.1:5217/sql/update%20kezz%20set%20s_mcupdate%20where%20p_id%20%20-4005.4 执行DELETE语句
http://127.0.0.1:5217/sql/delete%20from%20kezz%20where%20p_id-4006 资源下载
REST2SQL实现连接数据库数据库的表或视图即可提供REST的GET\POST\PUT\DELETE请求SQL可执行SQL https://download.csdn.net/download/sufuq/88684853