天天看點

Vue2+Koa2+Typescript前後端架構教程--03後端路由和三層模式配置

昨天将Koa2的基礎架構和自動編譯調試重新開機服務完成,今天開始配置路由和搭建基礎的三層架構模式。

路由中間件:koa-router,即路由導航,就是我們平時使用最廣泛的get/post方法執行的URL路徑,其全部包括get、put、post、patch、delete、del,通過通路路徑,指向不同的子產品,指向不同的業務方法;

基礎三層模式架構:即Model,Service,Controller,資料流向是Router-->Controller-->Service-->Model-->Database。如下圖:

Vue2+Koa2+Typescript前後端架構教程--03後端路由和三層模式配置

 上圖說明:

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)

Vue2+Koa2+Typescript前後端架構教程--03後端路由和三層模式配置

 另外,package.json中,修改tsconfig.json中包含的路徑:

Vue2+Koa2+Typescript前後端架構教程--03後端路由和三層模式配置

 F5運作,localhost:3000即顯示運作結果。

今天先到這裡,即介紹和搭建三層模式,明天添加相關TS檔案做詳細案例介紹。

(文章為老呂原創,轉載請注明出處)