beego學(xué)習(xí)筆記一:創(chuàng)建第一個beego Web項目

前提工作

環(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
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í)行文件默認(rèn)存放在 $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 //這里相當(dāng)于繼承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工具默認(rèn)為我們的beego項目實現(xiàn)了熱加載祭阀,我們在來看看控制臺

改動代碼無需重啟項目,簡直不要太爽鲜戒!

讓后我們打開瀏覽器輸入http://localhost:8080/hello 看結(jié)果

完活专控!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市遏餐,隨后出現(xiàn)的幾起案子伦腐,更是在濱河造成了極大的恐慌,老刑警劉巖境输,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異颖系,居然都是意外死亡嗅剖,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進店門嘁扼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來信粮,“玉大人,你說我怎么就攤上這事趁啸∏吭担” “怎么了?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵不傅,是天一觀的道長旅掂。 經(jīng)常有香客問我,道長访娶,這世上最難降的妖魔是什么商虐? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上秘车,老公的妹妹穿的比我還像新娘典勇。我一直安慰自己,他們只是感情好叮趴,可當(dāng)我...
    茶點故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布割笙。 她就那樣靜靜地躺著,像睡著了一般眯亦。 火紅的嫁衣襯著肌膚如雪伤溉。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天搔驼,我揣著相機與錄音谈火,去河邊找鬼。 笑死舌涨,一個胖子當(dāng)著我的面吹牛糯耍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播囊嘉,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼温技,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了扭粱?” 一聲冷哼從身側(cè)響起舵鳞,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎琢蛤,沒想到半個月后蜓堕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡博其,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年套才,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片慕淡。...
    茶點故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡背伴,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出峰髓,到底是詐尸還是另有隱情傻寂,我是刑警寧澤,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布携兵,位于F島的核電站疾掰,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏徐紧。R本人自食惡果不足惜个绍,卻給世界環(huán)境...
    茶點故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一勒葱、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧巴柿,春花似錦凛虽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至钉迷,卻和暖如春至非,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背糠聪。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工荒椭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人舰蟆。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓趣惠,卻偏偏與公主長得像,于是被迫代替她去往敵國和親身害。 傳聞我的和親對象是個殘疾皇子味悄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,509評論 2 348

推薦閱讀更多精彩內(nèi)容