AppBoxFuture 整合第三方Sql資料庫

2022-01-11 14:15:57 字數 1317 閱讀 5836

框架設計之初是不準備支援第三方資料庫的,但最近幾個朋友都提到需要將舊的基於傳統sql資料庫的應用遷移到框架內,主要是考慮到一方面目前框架內建的分布式資料庫尚未完善,另一方面是希望能逐步迭代舊應用替換傳統資料庫。因此作者還是決定支援第三方資料庫,下面介紹如何整合第三方資料庫,並將實體模型對映儲存至其中。

datastore主要儲存資料庫的配置(連線)資訊,通過ide主選單->datastore->newdatastore建立,建立後需要設定相應的連線資訊(如下圖所示),另如果是集群部署必須確保集群每乙個節點都能正常連線到資料庫。

目前僅實現了postgresql的支援

現在新建entitymodel時必須選擇對應的儲存源,"default"是框架內建的資料庫,其他名稱則是對應的第三方資料庫。建立完實體模型後開啟設計器,在"members"面板點選"add"按鈕可新增實體成員(對應資料庫表字段),如下圖所示:

根據不同的儲存源,實體模型設計器的選項面板會呈現不同的設定選項,sql資料庫可設定主鍵及索引,如下圖所示:

設定完並"儲存"及"發布"後,服務端會自動連線資料庫建立相應的表結構。另外dbfirst模式尚未實現,實現後可反向從現有資料庫生成實體模型。

上述操作完成後建立測試用的服務模型,如下圖所示編寫兩個服務方法,乙個簡單併發插入實體,乙個分頁查詢資料。

滑鼠定位相應的服務方法後點選"invoke"按鈕可呼叫服務方法進行測試,簡單併發插入實體及簡單分頁查詢的結果分別如下圖所示:

服務模型invoke與debug的區別:

invoke需要儲存並發布後呼叫,使用release選項編譯;

debug不需要儲存並發布,使用debug選項編譯,服務端有相應的debug程序處理除錯過程。

AppBoxFuture 六 前端元件化開發

前面幾篇都是在介紹結構化與非結構化的資料儲存,本篇換換口味介紹一下框架是如何實現前端元件化開發的。首先得感謝vue elementui等優秀的前端開源專案,這些專案幫助作者快速實現了框架的兩個前端工程 ide及web應用 的開發。由於框架的ide是基於web的,如何實現帶智慧型提示的 編輯及如何實現...

第4章 整合

4.1 尋找理想的整合技術的指導原則 避免服務方修改乙個欄位就引起消費方的修改 保證api的技術無關性 消費方應該能夠很簡單的使用服務方提供的服務,提供客戶端庫的做法會增加耦合。隱藏內部實現細節 4.2 musiccorp建立使用者介面 4.3 共享資料庫 資料庫整合 即消費者直接訪問資料庫 的缺點...

第5章 整合測試

一 整合測試定義 二 整合測試策略 三 整合測試過程 四 小結 練習1.為什麼有了單元測試,還需要整合測試?2.什麼是整合測試?3.當被測單元本身不是乙個獨立的程式,無法完整的執行,為了驗證被測單元的功能和輸入 輸出是否能正確處理,我們要為被測單元開發 和 4.是乙個或者一系列功能,它在被測的單元糊...