Go語(yǔ)言框架Beego項(xiàng)目搭建的方法步驟
1,命令行查看 Go 開(kāi)發(fā)包的環(huán)境變量配置信息
命令行說(shuō)明如下:
第 1 行,執(zhí)行 go env 指令,將輸出當(dāng)前 Go 開(kāi)發(fā)包的環(huán)境變量狀態(tài)。
第 2 行,GOARCH 表示目標(biāo)處理器架構(gòu)。
第 3 行,GOBIN 表示編譯器和鏈接器的安裝位置。
第 7 行,GOOS 表示目標(biāo)操作系統(tǒng)。
第 8 行,GOPATH 表示當(dāng)前工作目錄。
第 10 行,GOROOT 表示 Go 開(kāi)發(fā)包的安裝目錄。
從命令行輸出中,可以看到 GOPATH 設(shè)定的路徑為:C:\Users\Administrator\go
2,Web框架Beego環(huán)境搭建:
Beego這個(gè)框架是國(guó)人大牛謝孟軍寫的輕量級(jí)應(yīng)用框架,在他的書《Go Web編程》中就有對(duì)這個(gè)框架的說(shuō)明,各種寫的好。
需要先安裝好了Git,這下要發(fā)揮作用了。
步驟一、安裝beego
點(diǎn)擊“Git Bash”,輸入“go get github.com/astaxie/beego”,如下圖
其中這個(gè)安裝沒(méi)有進(jìn)度條,等待一會(huì)即可,不要以為是其他問(wèn)題啊
等一會(huì)兒即可。安裝完成后,在GOPATH路徑下,我這里GOPATH的路徑是“C:\Users\Administrator\go”,
在“ \pkg\github.com\”和“ \src\github.com\”路徑下能看到astaxie文件夾,還有下級(jí)beego文件夾
步驟二、安裝bee工具(框架生成工具)
為了方便的生成框架,點(diǎn)擊“Git Bash”,輸入“go get github.com/beego/bee ”,如下圖
稍等片刻即可在GOPATH的src目錄下看到有\(zhòng)github.com\beego\bee目錄,同時(shí)有很多依賴包被下載添加到\github.com目錄下
安裝完之后,bee 可執(zhí)行文件默認(rèn)存放在 $GOPATH/bin 里面,所以您需要把 $GOPATH/bin 添加到您的環(huán)境變量中,才可以進(jìn)行下一步。
打開(kāi)一個(gè)命令行輸入bee有如上結(jié)果即可
version 命令
這個(gè)命令是動(dòng)態(tài)獲取 bee、beego 和 Go 的版本,這樣一旦用戶出現(xiàn)錯(cuò)誤,可以通過(guò)該命令來(lái)查看當(dāng)前的版本
順帶說(shuō)一句,Go程序的目錄結(jié)構(gòu)是在GOPATH文件夾下的,分為bin, pkg, 和src三個(gè)子文件夾
bin文件夾:Go的每個(gè)項(xiàng)目生成的二進(jìn)制可執(zhí)行程序。windows下會(huì)生成.exe文件,linux下會(huì)生成可執(zhí)行文件。Go的最大特色之一就是可移植性,就是說(shuō),當(dāng)生成一個(gè)demo.exe之后,將這個(gè)exe文件放在任意一臺(tái)windows系統(tǒng)上(即使沒(méi)有安裝go安裝包),也是可以執(zhí)行的。這是讓PHP,Python等腳本語(yǔ)言望成莫及的。
pkg文件夾:第三方庫(kù)。里面存放你的項(xiàng)目中引用的第三方庫(kù)(非官方已經(jīng)提供的庫(kù))
src文件夾:每個(gè)次級(jí)文件夾(如demo)就是代表一個(gè)go項(xiàng)目,里面存放源程序
3,創(chuàng)建新項(xiàng)目
new 命令
new 命令是新建一個(gè) Web 項(xiàng)目,我們?cè)诿钚邢聢?zhí)行 bee new <項(xiàng)目名> 就可以創(chuàng)建一個(gè)新的項(xiàng)目。但是注意該命令必須在 $GOPATH/src 下執(zhí)行。最后會(huì)在 $GOPATH/src 相應(yīng)目錄下生成如下目錄結(jié)構(gòu)的項(xiàng)目:
這樣一個(gè)Beego框架的工程就生成成功了
結(jié)構(gòu)如下
myproject ├── conf │ └── app.conf ├── controllers │ └── default.go ├── main.go ├── models ├── routers │ └── router.go ├── static │ ├── css │ ├── img │ └── js ├── tests │ └── default_test.go └── views └── index.tpl 8 directories, 4 files
api 命令
上面的 new 命令是用來(lái)新建 Web 項(xiàng)目,不過(guò)很多用戶使用 beego 來(lái)開(kāi)發(fā) API 應(yīng)用。所以這個(gè) api 命令就是用來(lái)創(chuàng)建 API 應(yīng)用的,執(zhí)行命令之后如下所示:
項(xiàng)目結(jié)構(gòu)如下
apiproject ├── conf │ └── app.conf ├── controllers │ └── object.go │ └── user.go ├── docs │ └── doc.go ├── main.go ├── models │ └── object.go │ └── user.go ├── routers │ └── router.go └── tests └── default_test.go
從上面的目錄我們可以看到和 Web 項(xiàng)目相比,少了 static 和 views 目錄,多了一個(gè) test 模塊,用來(lái)做單元測(cè)試的。
同時(shí),該命令還支持一些自定義參數(shù)自動(dòng)連接數(shù)據(jù)庫(kù)創(chuàng)建相關(guān) model 和 controller:
bee api [appname] [-tables=""] [-driver=mysql] [-conn=“root:@tcp(127.0.0.1:3306)/test”]
如果 conn 參數(shù)為空則創(chuàng)建一個(gè)示例項(xiàng)目,否則將基于鏈接信息鏈接數(shù)據(jù)庫(kù)創(chuàng)建項(xiàng)目
run 命令
我們?cè)陂_(kāi)發(fā) Go 項(xiàng)目的時(shí)候最大的問(wèn)題是經(jīng)常需要自己手動(dòng)去編譯再運(yùn)行,bee run 命令是監(jiān)控 beego 的項(xiàng)目,通過(guò) fsnotify監(jiān)控文件系統(tǒng)。但是注意該命令必須在 $GOPATH/src/appname 下執(zhí)行。
這樣我們?cè)陂_(kāi)發(fā)過(guò)程中就可以實(shí)時(shí)的看到項(xiàng)目修改之后的效果:
打開(kāi)瀏覽器,輸入“http://127.0.0.1:8080”就看到了運(yùn)行的結(jié)果。(如果你本地裝有其他應(yīng)用占用了8080端口,可以更換下端口)
如果我們修改了 Controller 下面的 default.go 文件,刷新瀏覽器我們看到新的修改內(nèi)容已經(jīng)輸出:
之后ctrl+c停止服務(wù)即可
到此這篇關(guān)于Go語(yǔ)言框架Beego項(xiàng)目搭建的方法步驟的文章就介紹到這了,更多相關(guān)Go Beego項(xiàng)目搭建內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于golang 字符串 int uint int64 uint64&
這篇文章主要介紹了golang 字符串 int uint int64 uint64 互轉(zhuǎn),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-01-01使用golang獲取linux上文件的訪問(wèn)/創(chuàng)建/修改時(shí)間
這篇文章主要介紹了使用golang獲取linux上文件的訪問(wèn)/創(chuàng)建/修改時(shí)間,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-08-08Golang庫(kù)插件注冊(cè)加載機(jī)制的問(wèn)題
這篇文章主要介紹了Golang庫(kù)插件注冊(cè)加載機(jī)制,這里說(shuō)的插件并不是指的golang原生的可以在buildmode中加載指定so文件的那種加載機(jī)制,需要的朋友可以參考下2022-03-03GoFrame框架Scan類型轉(zhuǎn)換實(shí)例
這篇文章主要為大家介紹了GoFrame框架Scan類型轉(zhuǎn)換的實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Go語(yǔ)言實(shí)現(xiàn)UDP協(xié)議及TCP通訊
這篇文章介紹了Go語(yǔ)言實(shí)現(xiàn)UDP協(xié)議及TCP通訊的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07vscode配置go開(kāi)發(fā)環(huán)境的實(shí)戰(zhàn)過(guò)程
vscode配置go的開(kāi)發(fā)環(huán)境很簡(jiǎn)單,下面這篇文章主要給大家介紹了關(guān)于vscode配置go開(kāi)發(fā)環(huán)境的實(shí)戰(zhàn)過(guò)程,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-06-06Go string轉(zhuǎn)int,int64,int32及注意事項(xiàng)說(shuō)明
這篇文章主要介紹了Go string轉(zhuǎn)int,int64,int32及注意事項(xiàng)說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07