TaskBuilder低代碼開發(fā)必須的三種文件—數(shù)據(jù)模型文件

用TaskBuilder開發(fā)的應(yīng)用系統(tǒng)屬于多層架構(gòu),也有前端文件和后臺服務(wù),但是前后端除了能直接執(zhí)行的代碼文件以外,還多了設(shè)計時的文件,因?yàn)镠TML代碼和JavaScript代碼的結(jié)構(gòu)太復(fù)雜,很難精確地還原為可以可視化設(shè)計的界面,所以TaskBuilder將可視化設(shè)計的前后端文件都保存為了JSON格式的 設(shè)計時文件,以便后續(xù)還能用TaskBuilder打開并用相應(yīng)的圖形化設(shè)計器查看或繼續(xù)進(jìn)行修改編輯。

另外,為了方便在TaskBuilder中進(jìn)行可視化開發(fā)時,能快速獲取數(shù)據(jù)庫中表或視圖的結(jié)構(gòu)信息,還需要創(chuàng)建數(shù)據(jù)模型文件。

總之,數(shù)據(jù)模型文件、后臺服務(wù)文件和前端頁面文件是使用TaskBuilder進(jìn)行低代碼開發(fā)必須的三種文件,下面分別對這三種文件進(jìn)行詳細(xì)介紹。

3.1數(shù)據(jù)模型文件

TaskBuilder主要用來開發(fā)基于關(guān)系型數(shù)據(jù)庫的信息系統(tǒng),在開發(fā)的過程中,經(jīng)常需要與數(shù)據(jù)庫打交道,為了方便開發(fā)者對數(shù)據(jù)庫中的表和視圖進(jìn)行統(tǒng)一的維護(hù)和管理,TaskBuilder提供了專門的數(shù)據(jù)模型設(shè)計和管理的功能,可以直接在TaskBuilder里設(shè)計表和視圖對應(yīng)的數(shù)據(jù)模型,然后同步到數(shù)據(jù)庫,也可以將數(shù)據(jù)庫中已有的表或視圖導(dǎo)出為數(shù)據(jù)模型文件。

通過數(shù)據(jù)模型,一是可以在開發(fā)的過程中快速獲取表或視圖的定義信息,二是可以在數(shù)據(jù)模型文件中配置一些常用的校驗(yàn)規(guī)則和關(guān)聯(lián)關(guān)系,以便在對這些表或視圖進(jìn)行操作時能自動進(jìn)行數(shù)據(jù)校驗(yàn)和關(guān)聯(lián)更新。

3.1.1數(shù)據(jù)模型文件的格式

TaskBuilder中的數(shù)據(jù)模型文件的擴(kuò)展名為.tdm(Taskmsg Data Model),用來定義應(yīng)用的數(shù)據(jù)結(jié)構(gòu),對應(yīng)數(shù)據(jù)庫里的表或視圖,該文件的實(shí)際內(nèi)容為JSON格式,里面定義的信息包括數(shù)據(jù)庫類型、數(shù)據(jù)源id、數(shù)據(jù)對象類型(表或視圖)和名稱,以及字段信息列表等,字段信息包括字段的名稱、數(shù)據(jù)類型、長度、是否允許為空、默認(rèn)值是多少等等。在數(shù)據(jù)模型設(shè)計器內(nèi),點(diǎn)擊底部的“TDM代碼”選項(xiàng)卡,即可查看數(shù)據(jù)模型的JSON代碼,如下圖所示:


3.1.2數(shù)據(jù)庫表的模型設(shè)計

如果數(shù)據(jù)模型對應(yīng)的是數(shù)據(jù)庫中的表,則打開后的數(shù)據(jù)模型設(shè)計器界面如下圖所示:


在此可以設(shè)置數(shù)據(jù)模型具體包括有哪些字段,以及各個字段的數(shù)據(jù)類型、長度、是否是主鍵、是否非空、是否自動增長、是否唯一、默認(rèn)值、備注等信息。

3.1.3數(shù)據(jù)庫視圖的模型設(shè)計

如果數(shù)據(jù)模型對應(yīng)的是數(shù)據(jù)庫中的視圖,則打開后的數(shù)據(jù)模型設(shè)計器界面如下圖所示:


在此可以設(shè)置數(shù)據(jù)模型具體由哪些表關(guān)聯(lián)構(gòu)成,哪個是主表,各個表之間的關(guān)聯(lián)條件,視圖有哪些字段,各個字段是屬于哪個表的,另外,還可以設(shè)置查詢條件、分組條件和過濾條件。

3.1.4數(shù)據(jù)模型的雙向同步

如果在數(shù)據(jù)庫里修改了表或視圖,可以點(diǎn)工具欄上的“從數(shù)據(jù)庫同步”按鈕將改動同步到數(shù)據(jù)模型文件中,如果在數(shù)據(jù)模型設(shè)計器中修改了數(shù)據(jù)模型,可以點(diǎn)工具欄上的“同步到數(shù)據(jù)庫”按鈕將改動同步到數(shù)據(jù)庫。

3.1.5查看數(shù)據(jù)模型基本信息

在數(shù)據(jù)模型設(shè)計器內(nèi),點(diǎn)擊底部的“基本信息”選項(xiàng)卡,即可查看當(dāng)前數(shù)據(jù)模型的基本信息,如下圖所示:


在此可以查看數(shù)據(jù)模型的文件名、數(shù)據(jù)源ID、數(shù)據(jù)庫類型、數(shù)據(jù)對象類型、同步狀態(tài)和模型備注,其中,模型備注可以設(shè)置和修改,如果設(shè)置了備注,則在項(xiàng)目資源管理器的數(shù)據(jù)模型列表里,該模型文件名后面會顯示備注信息。

3.1.6查看創(chuàng)建模型的DDL語句

在數(shù)據(jù)模型設(shè)計器內(nèi),點(diǎn)擊底部的“創(chuàng)建模型DDL”選項(xiàng)卡,即可查看創(chuàng)建該數(shù)據(jù)模型的DDL SQL語句,如下圖所示:


點(diǎn)擊工具欄上的“復(fù)制SQL”按鈕,然后粘貼到其他數(shù)據(jù)庫管理工具內(nèi)執(zhí)行,即可在其連接的數(shù)據(jù)庫內(nèi)創(chuàng)建當(dāng)前數(shù)據(jù)模型定義的表或視圖。

3.1.7使用數(shù)據(jù)模型的必要性

有同學(xué)可能會問,既然數(shù)據(jù)模型文件里保存的都是表或視圖的信息,那進(jìn)行以上操作時,為什么不直接從數(shù)據(jù)庫里獲取表或視圖的信息呢?主要有以下幾個原因:

[if !supportLists]l?[endif]性能:數(shù)據(jù)模型文件的內(nèi)容會被緩存到內(nèi)存中,需要使用時可以直接從內(nèi)存讀取,比從關(guān)系型數(shù)據(jù)庫查詢要快得多;

[if !supportLists]l?[endif]擴(kuò)展性:數(shù)據(jù)模型文件里可以添加一些數(shù)據(jù)庫里沒有的信息,例如數(shù)據(jù)模型所屬的數(shù)據(jù)源、多個表之間的關(guān)聯(lián)關(guān)系、字段的擴(kuò)展校驗(yàn)規(guī)則等;

[if !supportLists]l?[endif]兼容性:數(shù)據(jù)模型文件是一個中性的文件,理論上可以適配任擎支持的任何數(shù)據(jù)庫。

總之,數(shù)據(jù)模型是使用TaskBuilder進(jìn)行低代碼開發(fā)所需的最基礎(chǔ)信息,也是必須的信息,用TaskBuilder開發(fā)應(yīng)用的第一步就是先創(chuàng)建好數(shù)據(jù)模型,否則后續(xù)的工作都無法進(jìn)行。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容