带你快速入门Beego框架
Beego在设计理念上偏向「全家桶式框架(像 Django、Laravel)」,和 Fiber / Echo / Gin 的「轻量化框架」风格形成鲜明对比。它是“自带轮子”的框架,内置了许多功能,诸如:
- CLI工具
- 日志系统
- ORM
- Session / Cache
- 模板引擎
另外它通过反射实现了老派MVC框架的自动路由功能,即不用手写路由表,根据控制器里的方法名,框架自动生成 URL → 方法的映射关系。
Beego使你不使用三方库就基本可以完成开发, 但也正是由于它功能模块较多(反射、自动注册路由、ORM 层等),导致额外开销,又基于标准库 net/http作为底层引擎。所以性能较差。
bee 工具
Beego 提供了一个 CLI 工具 bee,可以帮助我们快速创建项目、生成代码等。
安装bee工具:
# go 1.16 以前的版本
go get -u github.com/beego/bee/v2
# go 1.16及以后的版本
go install github.com/beego/bee/v2@latestbee 可执行文件默认存放在 $GOPATH/bin 里面,请添加 $GOPATH/bin 到环境变量。
常用命令
可以先查看bee 工具的常用命令,我们打开帮助:
bash
bee help来创建一个新的 Beego Web 项目:
bash
bee new myproject可以看到项目下生成了一个完整的web项目,包括下面内容:
- 配置文件
- 控制器
- 模型
- 路由映射
- 静态资源文件
- 视图模板文件
我们使用bee run运行项目,web服务默认运行在8080端口
bash
cd myproject
bee run如果无法运行,请执行
go mod tidy处理包依赖
浏览器打开http://localhost:8080/可以看到初始Beego界面。
如果我们的服务只是用作服务端的接口,或者是做网关转发,那么执行bee api命令生成一个api项目。
bash
bee api apiproject我们看到,自动生成的项目文件夹没有了静态文件和模板文件等等,且接口是REST风格,默认使用JSON返回。