真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

基于GO語(yǔ)言框架Gin開發(fā)MVC輪子框架GinLaravel的示例

小編給大家分享一下基于GO語(yǔ)言框架Gin開發(fā)MVC輪子框架GinLaravel的示例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、貴定網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為貴定等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

什么是golang

golang 是Google開發(fā)的一種靜態(tài)強(qiáng)類型、編譯型、并發(fā)型,并具有垃圾回收功能的編程語(yǔ)言,其語(yǔ)法與 C語(yǔ)言相近,但并不包括如枚舉、異常處理、繼承、泛型、斷言、虛函數(shù)等功能。

GinLaravel、GoLaravel介紹

基于GO框架Gin開發(fā),項(xiàng)目結(jié)構(gòu)和項(xiàng)目哲學(xué)參考Laravel,支持MVC開發(fā)模式。本項(xiàng)目展示了MVC處理數(shù)據(jù),同時(shí)展示”Safe—Controller—Kit”模式處理數(shù)據(jù)。

SCK模型大多數(shù)情況下是面向Api等,具有接口安全、請(qǐng)求數(shù)據(jù)直接易懂、復(fù)雜格式數(shù)據(jù)易操作(批量處理)、請(qǐng)求寬進(jìn)嚴(yán)出等特點(diǎn)。SCK沒有model層,也不推薦使用model。/Gen1/展示了使用MVC方式處理數(shù)據(jù);/Gen3/展示了使用SCK處理數(shù)據(jù)和請(qǐng)求。

現(xiàn)已支持

Go-MySQL、Go-redis、熱更(fresh)、MVC、模版輸出、Http訪問頻率攔截、HttpCors、對(duì)稱加密(可中文)、http攔截器、Form上傳文件。

理念

寬進(jìn)嚴(yán)出,面向Api,能有效節(jié)約時(shí)間和保持秀發(fā)。

運(yùn)行特點(diǎn)

內(nèi)存常駐,可似swoole,Golang開發(fā)速度是PHP的十分之一,可支持熱更。

項(xiàng)目目錄解釋

-/app/Common/ 對(duì)go原生封裝的公共函數(shù)、自定義必要數(shù)據(jù)參數(shù)配置

-/app/Http/ 控制器、模型、攔截器

-/app/Kit/ 自定義系統(tǒng)服務(wù),包含第三方服務(wù)和系統(tǒng)功能服務(wù)

-/bootstrap/ 系統(tǒng)服務(wù)啟動(dòng)、數(shù)據(jù)庫(kù)全局引用配置,一般不需要更改此處。

-/config/ MySQL數(shù)據(jù)庫(kù)、Redis緩存、http端口號(hào)等配置

-/routes/ 路由,同時(shí)支持模版型路由、Api型路由

-/storage/ 系統(tǒng)日志、文件上傳、靜態(tài)緩存

-/views/ 模版渲染的原始文件夾

-ginlaravel 項(xiàng)目生產(chǎn)的二進(jìn)制文件,在生產(chǎn)環(huán)境用

-go.mod 項(xiàng)目所依賴的module路徑、第三方庫(kù)等的引入

-server.go 跑起本項(xiàng)目的入口go-main文件。

命名原則

自定義函數(shù):大駝峰
自定義變量:小駝峰
自定義結(jié)構(gòu)體和結(jié)構(gòu)體成員:大駝峰
MySQL:小寫+下劃線
接口名:小寫+下劃線
自定義文件夾名:大駝峰
系統(tǒng)集文件夾名:小寫

運(yùn)行項(xiàng)目

Go運(yùn)行環(huán)境。搭建Go和基礎(chǔ)Gin環(huán)境請(qǐng)參考:blog.csdn.net/weixin_41827162/arti...

MySQL(請(qǐng)將/項(xiàng)目資料/ginlaravel.sql 文件導(dǎo)入到數(shù)據(jù)庫(kù))

cmd中運(yùn)行”go run server.go”即可啟動(dòng)項(xiàng)目?;蚴褂脽岣绞絾?dòng)http服務(wù),在cmd中目錄運(yùn)行”fresh”。

訪問”127.0.0.1:8090/gen1/user/list_user “

項(xiàng)目上線:serverConfig[“ENV”]的值改成release,然后使用以上同樣方法運(yùn)行。

如何初始化項(xiàng)目

以當(dāng)前目錄 /Users/fyonecon/go/src/ 為例

獲取源代碼:
git clone https://github.com/fyonecon/ginlaravel.git
cd go/src/ginlaravel

使用 govendor 安裝依賴包:
go get -u -v github.com/kardianos/govendor
govendor sync

初始化項(xiàng)目:
go mod init

構(gòu)建依賴:
go mod tidy
go mod vendor

打包成二進(jìn)制文件:
go build -mod=mod

啟動(dòng)MySQL數(shù)據(jù)庫(kù):請(qǐng)自行啟動(dòng)。

啟動(dòng)Redis:請(qǐng)自行啟動(dòng)。

在/config/mysql.go配置數(shù)據(jù)庫(kù)信息,用來連接你的數(shù)據(jù)庫(kù)。

啟動(dòng)http服務(wù):
go run server.go

如何運(yùn)行fresh熱更服務(wù)

以項(xiàng)目目錄 /Users/fyonecon/go/src/ginlaravel 為例

去.bash_profile文件目錄:
cd ~運(yùn)行:
source ~/.bash_profile

切換到項(xiàng)目目錄:
cd go/src/ginlaravel

開啟熱更:
fresh

退出http服務(wù)用快捷鍵:Ctrl + C ?;蛑苯雨P(guān)閉終端窗口。

以上即可項(xiàng)目開啟的fresh熱更服務(wù)。
若想一直開啟終端窗口,請(qǐng)使用screen(yum install screen)來保持窗口。

熱更服務(wù)文檔:github.com/gravityblast/fresh 。

(Mac環(huán)境)將項(xiàng)目打包成二進(jìn)制文件

項(xiàng)目根目錄:
    go build -mod=mod

此時(shí),在項(xiàng)目目錄生成或更新了ginlaravel二進(jìn)制文件。
開啟文件的可執(zhí)行權(quán)限:
    chmod 773 ginlaravel

在根目錄運(yùn)行:    ./ginlaravel

即可開啟二進(jìn)制服務(wù)。

以上是“基于GO語(yǔ)言框架Gin開發(fā)MVC輪子框架GinLaravel的示例”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


網(wǎng)站標(biāo)題:基于GO語(yǔ)言框架Gin開發(fā)MVC輪子框架GinLaravel的示例
瀏覽路徑:http://weahome.cn/article/gsesgj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部