前提工作
環(huán)境搭建,可以參考如下兩篇教程:
搭建Go語言環(huán)境1
搭建Go語言環(huán)境2
安裝beego
beego 的安裝是典型的 Go 安裝包的形式:
go get github.com/astaxie/beego
常見問題:
- git https 無法獲取,請配置本地的 git,關(guān)閉 https 驗證:
git config --global http.sslVerify false
- 如因為網(wǎng)絡(luò)問題無法下載,請參考下面的
源碼下載升級方式
beego 升級分為 go 方式升級和源碼下載升級:
- Go 升級,通過該方式用戶可以升級 beego 框架,強烈推薦該方式:
go get -u github.com/astaxie/beego
- 源碼下載升級,用戶訪問 https://github.com/astaxie/beego ,下載源碼,然后覆蓋到 $GOPATH/src/github.com/astaxie/beego 目錄,然后通過本地執(zhí)行安裝就可以升級了:
go install github.com/astaxie/beego
安裝bee工具
bee 工具是一個為了協(xié)助快速開發(fā) beego 項目而創(chuàng)建的項目,通過 bee 您可以很容易的進行 beego 項目的創(chuàng)建、熱編譯、開發(fā)、測試、和部署。
通過如下的方式安裝 bee 工具:
go get github.com/beego/bee
安裝完之后,bee可執(zhí)行文件默認存放在 $GOPATH/bin里面,所以需要把$GOPATH/bin添加到您的環(huán)境變量中,才可以進行下一步。
在命令行輸入bee,如果出現(xiàn)如下信息則表示安裝成功

我們可以在GOPATH/bin目錄下找到生成的bee.exe可執(zhí)行文件,如下:

新建beego web項目
new命令是新建一個 Web 項目,在命令輸入bee new <項目名>,比如我們輸入命令bee new myapp,運行結(jié)果如下:

bee工具會自動在$GOPATH/src目錄下生成myapp項目,如下:

啟動項目
命令窗口定位到myapp目錄下,運行命令bee run即可啟動項目

啟動成功,紅框部分顯示項目運行端口為8080,我們通過瀏覽器訪問:localhost:8080,即可進入如下界面

寫一個hello world
用idea打開該項目,下面是整體的項目結(jié)構(gòu)

在controllers目錄下新建hello.go文件,內(nèi)容如下:
package controllers
import (
"github.com/astaxie/beego"
)
type HelloController struct {
beego.Controller //這里相當于繼承beego.Controller
}
//重寫Get方法
func (hello *HelloController) Get() {
hello.Ctx.WriteString("hello go")
}
上面的代碼顯示首先我們聲明了一個控制器 HelloController,這個控制器里面內(nèi)嵌了beego.Controller,這就是 Go 的嵌入方式,也就是HelloController自動擁有了所有 beego.Controller 的方法。這類似于面向?qū)ο罄锏睦^承。
而beego.Controller擁有很多方法,其中包括Init、Prepare、Post、Get、Delete、Head等方法。我們可以通過重寫的方式來實現(xiàn)這些方法,而我們上面的代碼就是重寫了Get方法。
然后將新增的HelloController添加路由,修改routers/router.go文件,如下:
package routers
import (
"myapp/controllers"
"github.com/astaxie/beego"
)
func init() {
beego.Router("/", &controllers.MainController{})
// 新增路由
beego.Router("/hello", &controllers.HelloController{})
}
好了,接下來是不是想著要重啟項目?不用,bee工具默認為我們的beego項目實現(xiàn)了熱加載,我們在來看看控制臺

改動代碼無需重啟項目,簡直不要太爽!
讓后我們打開瀏覽器輸入http://localhost:8080/hello 看結(jié)果

完活!