昨天將Koa2的基礎框架和自動編譯除錯重啟服務完成,今天開始配置路由和搭建基礎的三層架構模式。
路由中介軟體:koa-router,即路由導航,就是我們平時使用最廣泛的get/post方法執行的URL路徑,其全部包括get、put、post、patch、delete、del,通過訪問路徑,指向不同的模組,指向不同的業務方法;
基礎三層模式架構:即Model,Service,Controller,資料流向是Router-->Controller-->Service-->Model-->Database。如下圖:
上圖說明:
1. 每個router指向一個controller,一個控制器代表一個模組,一個模組即是一個業務,業務內部進行邏輯處理,但各個模組之間沒有直接業務關係,降低模組耦合,比如班級管理,課程管理,學生管理,教師管理;
2. controller訪問service,service即每個單元級(資料模型model)邏輯處理服務。當controller進行業務處理時,需要對業務邏輯服務進行呼叫,比如班級管理中,主要業務是對班級的處理(增刪改查),但是班級的資料結構中也包括班主任ID,所以此時也要對班主任ID欄位進行儲存,在讀取班級資訊時,有時就需要班主任ID,通過教師服務關聯教師表的資訊,將教師姓名、手機號等資訊進行展示。
3. service訪問model,一個單元級服務只訪問一個資料模型,如班級單元服務-->班級資料模型,也就是班級的增刪改查的處理;
4. model通過ORM對映到database資料庫中對應表,進行訪問和儲存。
在程式碼結構中,我們先在src路徑下建立相關資料夾:(更改:將上篇中的index.ts重新命名app.ts【看起來正式點】,移入src根目錄,並修改launch.js中的program對應路徑和檔名,以及package.json中scripts中相關指令的index.js->app.js)
另外,package.json中,修改tsconfig.json中包含的路徑:
F5執行,localhost:3000即顯示執行結果。
今天先到這裡,即介紹和搭建三層模式,明天新增相關TS檔案做詳細案例介紹。