日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

SpringBoot可視化接口開發工具magic-api的簡單使用教程

瀏覽:6日期:2023-03-04 08:32:02
目錄magic-api簡介使用在SpringBoot中使用增刪改查參數驗證結果轉換使用事務集成Swagger總結參考資料magic-api簡介

magic-api是一個基于Java的接口快速開發框架,編寫接口將通過magic-api提供的UI界面完成,自動映射為HTTP接口,無需定義Controller、Service、Dao、Mapper、XML、VO等Java對象。

使用

下面我們來波實戰,熟悉下使用magic-api來開發API接口。

在SpringBoot中使用

magic-api原生支持SpringBoot,可與SpringBoot無縫整合。

首先在pom.xml中添加magic-api相關依賴;

<!--接口快速開發框架 magic-api--><dependency> <groupId>org.ssssssss</groupId> <artifactId>magic-api-spring-boot-starter</artifactId> <version>1.0.2</version></dependency> 在配置文件application.yml中添加數據源及magic-api相關配置;

spring: datasource: url: jdbc:mysql://localhost:3306/magic_api?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai username: root password: rootmagic-api: # 配置api管理頁面入口 web: /magic/web # 配置存儲方式 resource: # 配置接口資源存儲位置,可選file、database、redis type: database # 存儲表名 tableName: magic_api_file # 使用database、redis存儲時的key前綴 prefix: /magic-api # 是否是只讀模式 readonly: false # 啟用駝峰命名轉換 sql-column-case: camel # 分頁配置 page-config: # 頁大小的請求參數名稱 size: size # 頁碼的請求參數名稱 page: page # 未傳頁碼時的默認頁碼 default-page: 1 # 未傳頁大小時的默認頁大小 default-size: 10 在MySQL中創建數據庫magic_api,由于我們配置了使用數據庫存儲接口資源,所以需要先創建magic_api_file表;

CREATE TABLE `magic_api_file`( `id` bigint(255) NOT NULL AUTO_INCREMENT, `file_path` varchar(255) DEFAULT NULL, `file_content` text, PRIMARY KEY (`id`)) 再創建pms_brand表,用于測試;

CREATE TABLE `pms_brand` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `big_pic` varchar(255) DEFAULT NULL, `brand_story` varchar(255) DEFAULT NULL, `factory_status` bit(1) DEFAULT NULL, `first_letter` varchar(255) DEFAULT NULL, `logo` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `product_comment_count` int(11) DEFAULT NULL, `product_count` int(11) DEFAULT NULL, `show_status` bit(1) DEFAULT NULL, `sort` int(11) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4; 最后啟動項目,訪問magic-api的UI界面,訪問地址:http://localhost:8080/magic/web

SpringBoot可視化接口開發工具magic-api的簡單使用教程

增刪改查

接下來我們將以商品品牌管理為例,體驗下使用magic-api開發接口的快感!使用magic-api開發API接口,僅需在界面中使用magic-script腳本即可。

首先我們來寫個新增接口,先創建一個分組,然后在分組中創建一個新增接口,在編輯框中輸入如下腳本;

// 使用body對象可以直接獲取請求body中的參數return db.table(’pms_brand’).insert(body); 在底部的接口信息中進行如下配置,POST請求,請求路徑為/create,請求參數放在請求body中;

SpringBoot可視化接口開發工具magic-api的簡單使用教程

再來個根據ID查詢的接口,在編輯框中輸入如下腳本;

// 路徑變量從path對象中獲取return db.table(’pms_brand’) .where() .eq(’id’,path.id) .selectOne(); 在底部的接口信息中進行如下配置,GET請求,請求路徑為/detail/{id},請求參數放在路徑變量中;

SpringBoot可視化接口開發工具magic-api的簡單使用教程

再來個修改的接口,在編輯框中輸入如下腳本;

return db.table(’pms_brand’).primary(’id’,body.id).update(body); 在底部的接口信息中進行如下配置,POST請求,請求路徑為/update,請求參數放在請求body中;

SpringBoot可視化接口開發工具magic-api的簡單使用教程

再來個分頁查詢查詢的接口,在編輯框中輸入如下腳本;

return db.table(’pms_brand’).page(); 在底部的接口信息中進行如下配置,GET請求,請求路徑為/page,請求參數放在請求參數中(由于已經在application.yml中配置好了分頁參數,可直接使用);

SpringBoot可視化接口開發工具magic-api的簡單使用教程

再來個根據ID刪除的接口,在編輯框中輸入如下腳本,刪除只能使用update,這設計有點...

return db.update(’delete from pms_brand where id=#{id}’); 在底部的接口信息中進行如下配置,POST請求,請求路徑為/delete/{id},請求參數放在路徑變量中;

SpringBoot可視化接口開發工具magic-api的簡單使用教程

參數驗證

我們可以通過斷言模塊assert來進行參數驗證。

比如新增品牌的時候名稱和首字母不能為空,在編輯框中輸入如下腳本;

import assert; //導入斷言模塊//驗證不通過時,會終止運行assert.notEmpty(body.name,400,’名稱不能為空!’);assert.notEmpty(body.firstLetter,400,’首字母不能為空!’);return db.table(’pms_brand’).insert(body); 在底部的接口信息中進行如下配置,POST請求,請求路徑為/test,請求參數放在請求body中;

SpringBoot可視化接口開發工具magic-api的簡單使用教程

當我們不添加name字段時,調用接口會返回我們自己定義的錯誤信息和狀態碼。

SpringBoot可視化接口開發工具magic-api的簡單使用教程

結果轉換

我們可以使用map方法對查詢數據進行轉換,返回我們想要的數據。

比如我們想將showStatus轉換為中文說明,并只返回三個需要的字段,在編輯框中輸入如下腳本;

var list = db.table(’pms_brand’).select();return list.map((item)=>{ name : item.name, firstLetter : item.firstLetter, showStatus : item.showStatus? ’不顯示’ : ’顯示’}); 訪問該接口,在執行結果中可以發現,返回結果已經轉換。

SpringBoot可視化接口開發工具magic-api的簡單使用教程

使用事務

在我們使用Java開發接口的時候,少不了用到事務,當然magic-api也是支持事務的。使用db.transaction()方法即可,支持自動事務和手動事務。

還是以修改品牌為例,先查詢是否存在,如果存在則更新;

import assert; var val = db.transaction(()=>{ var exist = db.table(’pms_brand’).where().eq(’id’,body.id).selectOne(); assert.notNull(exist,404,’找不到該品牌!’); db.table(’pms_brand’).primary(’id’,body.id).update(body); return v2;});return val; 在底部的接口信息中進行如下配置,POST請求,請求路徑為/test,請求參數放在請求body中;

SpringBoot可視化接口開發工具magic-api的簡單使用教程

集成Swagger

寫了那么多接口,都是在magic-api的界面中進行調試的。如果你習慣使用Swagger,magic-api也可以和Swagger進行無縫整合。

首先在pom.xml中添加Swagger相關依賴;

<dependencies> <!--Swagger-UI API文檔生產工具--> <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version> </dependency> <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.9.2</version> </dependency></dependencies> 在配置文件application.yml中添加Swagger相關配置;

magic-api: # 集成Swagger配置 swagger-config: # 文檔名稱 name: MagicAPI 測試接口 # 文檔標題 title: MagicAPI Swagger Docs # 文檔描述 description: MagicAPI 測試接口信息 # 文檔版本號 version: 1.0 # 文檔資源位置 location: /v2/api-docs/magic-api/swagger2.json 訪問Swagger界面即可查看我們在magic-api中寫的接口了,訪問地址:http://localhost:8080/swagger-ui.html

SpringBoot可視化接口開發工具magic-api的簡單使用教程

總結

magic-api是個很有意思的框架,可以通過在UI界面中使用簡單的腳本,進行API接口的開發。不過作為一款小眾框架,magic-api還有很長一段路要走!

參考資料

官方文檔:https://ssssssss.org/

項目源碼地址https://github.com/macrozheng/mall-learning/tree/master/mall-tiny-magic-api

以上就是SpringBoot可視化接口開發工具magic-api的簡單使用教程的詳細內容,更多關于SpringBoot magic-api的使用的資料請關注好吧啦網其它相關文章!

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩在线视频一区二区三区| 国产国产精品| 日韩精品一页| 国产精品视频3p| 国产精品久一| 视频小说一区二区| 婷婷精品进入| 日韩精品成人在线观看| 日本综合精品一区| 精品亚洲成人| 好看的亚洲午夜视频在线| 日韩一区二区三区四区五区| 荡女精品导航| 午夜宅男久久久| 日本99精品| 亚洲一级少妇| 中文字幕日本一区二区| 国产一区2区| 日韩天堂av| 国产免费av一区二区三区| 欧美日韩免费看片| 亚洲精品第一| 午夜影院一区| 日韩av电影一区| 国产91久久精品一区二区| 日本不卡一二三区黄网| 不卡福利视频| 国产精品日本一区二区三区在线| 麻豆精品视频在线观看免费| 久久久久99| 91成人在线网站| 久久久五月天| 国内不卡的一区二区三区中文字幕| 免费不卡中文字幕在线| 麻豆精品视频在线观看免费| 玖玖玖国产精品| 成午夜精品一区二区三区软件| 美日韩精品视频| 色婷婷综合网| 99国产精品久久久久久久| 国产免费av一区二区三区| 国产日韩综合| 九一成人免费视频| 欧洲在线一区| 精品成av人一区二区三区| 日韩中文字幕在线一区| 国产韩日影视精品| 久久在线电影| 日韩国产一区| 国产传媒av在线| 久久一区亚洲| 国产探花一区在线观看| 免费国产自线拍一欧美视频| 狠狠色狠狠色综合日日tαg| 岛国av在线网站| 麻豆久久一区| 成人三级高清视频在线看| 久久免费精品| 国产精品黑丝在线播放| 国产欧美一区二区三区精品观看 | 精品国产亚洲一区二区三区在线| 日韩一区二区三区高清在线观看| 99riav1国产精品视频| 国产精品毛片一区二区在线看| 国产成人免费精品| 久久精品国产999大香线蕉| 欧美国产三级| 精品久久久久久久| 日产精品一区| 欧美专区一区二区三区| 亚洲精选久久| 欧美日韩一视频区二区| 国产精品蜜月aⅴ在线| 精品一区二区三区视频在线播放| 日韩成人精品一区二区| 欧美高清一区| 日韩av成人高清| 国产一区二区三区亚洲综合| 激情欧美丁香| 欧美一区在线观看视频| 国产精品**亚洲精品| 亚洲高清不卡| 亚欧成人精品| 日本激情一区| 国产欧美啪啪| 欧美有码在线| 日韩不卡一区二区| 国产高清亚洲| 午夜精品一区二区三区国产| 日韩专区欧美专区| 精品国产18久久久久久二百| 免费精品国产的网站免费观看| 国产亚洲观看| 国产精品女主播一区二区三区| 91亚洲精品在看在线观看高清| 中文字幕在线高清| 97se亚洲| 亚洲黄页一区| 国产精品精品| 国产精品视频3p| 中文在线日韩| 亚洲三级欧美| 国产欧美日韩一级| 日韩精品一区第一页| 亚洲伊人av| 精品一区视频| 国产精品亚洲综合色区韩国| 久久国产88| 久久影院一区| 91精品精品| 美女精品久久| 日韩高清不卡在线| 亚洲一区二区三区无吗| 国产在线|日韩| 国产日韩电影| 亚洲精品一级二级| 精品少妇一区| 国产精品成人3p一区二区三区| 亚洲综合激情在线| 蜜臀久久久99精品久久久久久| 夜夜嗨网站十八久久| 亚洲综合日本| 日本 国产 欧美色综合| 久久国产成人| 一区二区亚洲视频| 精品美女视频 | 久久国产尿小便嘘嘘| 日本不卡一区二区| 国产精品最新| 国产一区国产二区国产三区| 久久精品网址| 色偷偷色偷偷色偷偷在线视频| 日韩精品中文字幕第1页| 日韩免费小视频| 奶水喷射视频一区| 国产日产精品_国产精品毛片| 国产精品.xx视频.xxtv| 亚洲伊人av| 蜜臀av国产精品久久久久| 中文字幕一区二区三区在线视频| 久久国产精品99国产| 国产亚洲欧美日韩精品一区二区三区| 国产精品成人3p一区二区三区| 日韩中文在线电影| 亚洲精品影视| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 亚洲一区二区网站| 欧美日韩一区二区三区四区在线观看| 精品亚洲自拍| 在线看片日韩| 欧美国产偷国产精品三区| 黄色亚洲精品| 国产精品igao视频网网址不卡日韩| 91日韩欧美| 中文字幕一区二区精品区| 国产成人久久精品一区二区三区| 欧美精品黄色| 欧美国产免费| 99成人在线| 国产一区二区三区国产精品| 美女被久久久| 欧美日韩在线二区| 国产精品巨作av| 中文字幕一区二区三区日韩精品| 国产精品调教| 一区二区三区网站| 九色porny丨国产首页在线| 欧美亚洲人成在线| 亚洲免费一区二区| 人人精品亚洲| 福利一区和二区| 欧美在线91| 日韩精品久久理论片| 好看的av在线不卡观看| 麻豆网站免费在线观看| 国产精品亚洲一区二区在线观看 | 电影亚洲精品噜噜在线观看| 久久激情五月激情| 五月国产精品| 丝袜美腿亚洲一区| 亚洲一区二区免费看| 91精品蜜臀一区二区三区在线| 成人亚洲精品| 成人高清一区| 91av亚洲| 999精品色在线播放| 欧洲精品一区二区三区| 麻豆久久一区二区| 国产精品sm| 国产一区2区| 麻豆精品在线播放| 国产66精品| 丝袜美腿诱惑一区二区三区| 丝袜美腿一区| 日韩视频一区| 日本午夜精品一区二区三区电影| 日韩精品欧美精品| 精品一区二区三区中文字幕| 国产夫妻在线| 尹人成人综合网|