本次更新內容:
- 新增
try with resources
語法支援 - 修復在使用
log
的情況下DEBUG
可能造成執行緒阻塞的問題 - 修復
mybatis
模式中的部分跳脫錯誤 - 修復
finally
程式碼塊在部分情況表現與Java
不一致的問題 - 修復集合、陣列擴充套件方法
distinct
方法返回值是Set
的BUG
- 優化擴充套件方法快取,提升呼叫擴充套件方法效能
- 優化單表攔截器
API
,調整UPDATE
執行時機 - 優化程式碼提示、錯誤提示
提示
1.x
版本後續除了修復BUG
以外不會再新增功能,新功能將在2.x版本中目前
2.x
分支基本開發完畢,在1.x
基礎上的修改項如下:
- 前臺使用
vue3
重寫,UI
細節優化- 支援顯示線上人數,他人正在編輯的介面。
- 後臺重構,以便更加方便的新增新功能
- 支援
i18n
國際化(目前完成60%
)- 支援定時任務線上設定
- 備份機制重構,支援自動全量備份並從全量備份中還原。
- 移除
assert
模組,改用assert
語法,正在使用assert
模組的,強烈建議改為assert
語法,方便後續升級Elastsearch
模組(開發中)- 解構語法(開發中)
需要體驗的可以在 Gitee 下載原始碼,自行編譯
2.x
分支引入使用。需要注意的是,
2.x
版本並不完全相容1.x
版本,需要從1.x
版本中匯出,再從2.x
中的介面匯入。另外
2.x
版本尚未穩定,請勿在生產環境中使用。正式版本預計在春節後釋出。
專案介紹
magic-api 是一個基於 Java 的介面快速開發框架,編寫介面將通過 magic-api 提供的UI介面完成,自動對映為 HTTP 介面,無需定義 Controller、Service、Dao、Mapper、XML、VO 等 Java 物件即可完成常見的 HTTP API 介面開發
特性
- 支援 MySQL、MariaDB、Oracle、DB2、PostgreSQL、SQLServer 等支援jdbc規範的資料庫
- 支援非關係型資料庫 Redis、Mongodb
- 支援叢集部署、介面自動同步。
- 支援分頁查詢以及自定義分頁查詢
- 支援多資料來源設定,支援線上設定資料來源
- 支援 SQL 快取,以及自定義 SQL 快取
- 支援自定義 JSON 結果、自定義分頁結果
- 支援對介面許可權設定、攔截器等功能
- 支援執行時動態修改資料來源
- 支援 Swagger 介面檔案生成
- 基於 magic-script 指令碼引擎,動態編譯,無需重新啟動,實時釋出
- 支援 Linq 式查詢,關聯、轉換更簡單
- 支援資料庫事務、SQL 支援拼接,預留位置,判斷等語法
- 支援檔案上傳、下載、輸出圖片
- 支援指令碼歷史版本對比與恢復
- 支援指令碼程式碼自動提示、引數提示、懸浮提示、錯誤提示
- 支援匯入 Spring 中的 Bean、Java 中的類
- 支援線上偵錯
- 支援自定義工具類、自定義模組包、自定義型別擴充套件、自定義方言、自定義列名轉換等自定義操作
使用方式
maven 引入
<!-- 以spring-boot-starter的方式參照 --> <dependency> <groupId>org.ssssssss</groupId> <artifactId>magic-api-spring-boot-starter</artifactId> <version>1.7.5</version> </dependency
修改 application.properties
server.port=9999 #設定web頁面入口 magic-api.web=/magic/web #組態檔儲存位置。當以classpath開頭時,為唯讀模式 magic-api.resource.loaction=/data/magic-api
線上編輯
存取http://localhost:9999/magic/web
進行操作
檔案&演示
- 檔案地址:
- 線上演示:
專案截圖