一、對mvc的支持
beego支持完整的mvc
M:Model,beego orm,把數(shù)據(jù)庫數(shù)據(jù)變成object
特性
- 支持go的所有類型存儲
- 更簡潔的curd風(fēng)格
- 完整實(shí)現(xiàn)了健壯的ORM
支持的數(shù)據(jù)庫
- mysql、postgresql、sqlite3
V:View模板
特性
- 支持靜態(tài)文件處理
- 支持模板的處理
- 支持模板的分頁處理
C:各種業(yè)務(wù)邏輯處理
特性
- 路由控制
- 控制器函數(shù)
- 支持csrf
- session
- 錯誤處理和日志功能
gin不支持完整的mvc
- 需要開發(fā)者自己實(shí)現(xiàn)mvc
特性
- 支持HTML渲染和模板
- 靜態(tài)文件服務(wù)
- 路由
- 不支持session
二、對路由的支持
Beego
支持正則路由
- 支持restful Controller路由
Gin
不支持正則路由
三、適用場景
Beego在業(yè)務(wù)方面較Gin支持更多
- 在業(yè)務(wù)更加復(fù)雜的項目,適用beego
- 在需要快速開發(fā)的項目,適用beego
- 在1.0的項目中,適用beego,因?yàn)轫椖砍跗趯π阅軟]太大要求
Gin在性能方面較beego更好
- 當(dāng)某個接口性能遭到較大的挑戰(zhàn),考慮用Gin重寫
- 如果項目的規(guī)模不大,業(yè)務(wù)相對簡單,適用Gin
文檔資料
gin框架文檔 https://learnku.com/docs/gin-gonic/2018/gin-readme/3819