您的位置:首页 > 编程语言 > Go语言

Go语言beego框架环境搭建

2015-12-09 16:23 676 查看
beego是一个使用 Go 的思维来快速构建并开发 Go 应用程序的开源http框架,作者是谢孟军。它可以快速开发API、Web、后端服务等各种应用,功能支持RESTFul框架,MVC模型,可以使用 bee 工具快速地开发应用;含有智能路由,内置强大模块,采用了 Go 原生的 http 包来处理请求;goroutine 的并发效率足以应付大流量的 Web 应用和 API 应用等等,可谓是简单易用,十分强大。

假设已经把Go开发环境都搭建好了,如Go包安装,GOPATH,GOROOT,GOBIN等环境变量都OK。你可以在cmd命令行窗口中输入go version和go env来看看是否设置成功。



我的beego框架工程名为ocean,GOPATH=E:\work\ocean,操作步骤如下(命令行):

注意:

GOPATH 目录约定有三个子目录:

1).src 存放源代码(比如:.go .c .h .s等);

2).pkg 编译后生成的文件(比如:.a);

3).bin编译后生成的可执行文件(可把此目录设置为GOBIN变量并添加到环境变量中。如果有多个gopath,那么使用${GOPATH//://bin:}/bin添加所有的bin目录)。



1、 安装beego包(框架代码包)

打开cmd,输入

go get github.com/astaxie/beego




等会后,go get命令将会在GOPATH\src\中生成github.com文件夹,里面已经包含了astaxie\beego文件夹路径了。



2、 安装bee工具(框架生成工具)

同样的在命令行中输入

go get github.com/astaxie/bee


go get命令将会在GOPATH\src\中生成github.com文件夹,里面已经包含了beego\bee文件夹路径了。



同时在src平行目录下,会自动生成一个bin文件夹,里面包含了bee.exe框架生成工具(注意GOBIN要添加到环境变量中,如GOBIN=E:\work\ocean\bin)。



3、 使用bee工具生成框架代码

打开cmd,用“cd work\ocean\src”命令进入到GOPATH的src路径下,输入“bee new 工程名”

bee new ocean


则GOPATH\src文件夹中会生成bee框架代码,如下图所示。





文件目录如下:
ocean
├── conf
|   └── app.conf
├── controllers
|    └── default.go
├── main.go
├── models
├── routers
|    └── router.go
├── static
│   ├── css
│   ├── img
│   └── js
├── tests
│   └── default_test.go
└── views
└── index.tpl


从上面的目录结构我们可以看出来,beego文件目录是一个典型的MVC模式结构,M(models目录)、V(views目录)、C(controllers目录)的结构,main.go是入口文件。

ps:如果少了src文件夹,则使用“bee new ocean”会出错,如下图所示。



4、 运行

打开cmd,用“cd”命令进入到GOPATH的src\工程路径下,如“E:\work\ocean\src\ocean”输入

bee run




OK,程序已经成功启动并在8080端口监听。此时打开浏览器,输入http://localhost:8080/http://127.0.0.1:8080 ),则会显示如下界面。此外,bee还监控源文件的改动。如果检测到改动,bee将会自动的重新加载应用程序。



知识拓展

1、Beego架构

beego是基于八大独立的模块之上构建的,是一个高度解耦的框架。当初设计beego的时候就是考虑功能模块化,用户即使不适用beego的http逻辑,也是可以在使用这些独立模块,例如你可以使用cache模块来做你的缓存逻辑,使用日志模块来记录你的操作信息,使用config模块来解析你各种格式的文件,所以不仅仅在beego开发中,你的socket游戏开发中也是很有用的模块,这也是beego为什么受欢迎的一个原因。大家如果玩过乐高的话,应该知道很多高级的东西都是一块一块的积木搭建出来的,而设计beego的时候,这些模块就是积木,高级机器人就是beego。至于这些模块的功能以及如何使用会在后面的文档会逐一介绍。



2、Beego执行逻辑

beego是一个典型的MVC架构,他的执行逻辑如下图所示:



3、Beego文件目录

文件目录如下:
ocean
├── conf
|   └── app.conf
├── controllers
|    └── default.go
├── main.go
├── models
├── routers
|    └── router.go
├── static
│   ├── css
│   ├── img
│   └── js
├── tests
│   └── default_test.go
└── views
└── index.tpl


从上面的目录结构我们可以看出来M(models目录)、V(views目录)、C(controllers目录)的结构,main.go是入口文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: