golang beego安装及入门示例
安装
beego 包含一些示例应用程序以帮您学习并使用 beego 应用框架。
您需要安装 Go 1.1+ 以确保所有功能的正常使用。
你需要安装或者升级 Beego 和 Bee 的开发工具:
$ go get -u github.com/beego/beego/v2
$ go get -u github.com/beego/bee/v2
为了更加方便的操作,请将 $GOPATH/bin
加入到你的 $PATH
变量中。请确保在此之前您已经添加了 $GOPATH
变量。
# 如果您还没添加 $GOPATH 变量
$ echo 'export GOPATH="$HOME/go"' >> ~/.profile # 或者 ~/.zshrc, ~/.cshrc, 您所使用的sh对应的配置文件# 如果您已经添加了 $GOPATH 变量
$ echo 'export PATH="$GOPATH/bin:$PATH"' >> ~/.profile # 或者 ~/.zshrc, ~/.cshrc, 您所使用的sh对应的配置文件
$ exec $SHELL
想要快速建立一个应用来检测安装?
$ cd $GOPATH/src
$ bee new hello
$ cd hello
$ bee run
Windows 平台下输入:
>cd %GOPATH%/src
>bee new hello
>cd hello
>bee run
这些指令帮助您:
- 安装 beego 到您的 $GOPATH 中。
- 在您的计算机上安装 Bee 工具。
- 创建一个名为 “hello” 的应用程序。
- 启动热编译。
一旦程序开始运行,您就可以在浏览器中打开 http://localhost:8080/ 进行访问。
简单示例
下面这个示例程序将会在浏览器中打印 “Hello world”,以此说明使用 beego 构建 Web 应用程序是多么的简单!
以下示例程序存放路径:
- 放在
/home/zxl/workspace/golang/src/beego/hello/controllers
下可以直接build,run,因为已经生成了go.mod
包管理文件。- 如果是在别的目录编写
hello.go
文件,需要先使用go mod init
生成包管理文件,然后才能使用build、run编译、运行程序。root@debian:/home/zxl/workspace/golang/src/beego# ll -rw-r--r-- 1 root root 76 2月 7 14:01 go.mod -rw-r--r-- 1 root root 26144 2月 7 14:01 go.sum drwxr-xr-x 9 root root 4096 2月 7 13:34 hello -rw-r--r-- 1 root root 253 2月 7 13:47 hello.go -rwxr-xr-x 1 root root 18996070 2月 7 14:01 xxx root@debian:/home/zxl/workspace/golang/src/beego# go mod init go: creating new go.mod: module beego root@debian:/home/zxl/workspace/golang/src/beego# ll -rw-r--r-- 1 root root 22 2月 7 14:01 go.mod drwxr-xr-x 9 root root 4096 2月 7 13:34 hello -rw-r--r-- 1 root root 253 2月 7 13:47 hello.go root@debian:/home/zxl/workspace/golang/src/beego# go build -o xxx hello.go root@debian:/home/zxl/workspace/golang/src/beego# ll 总用量 18592 -rw-r--r-- 1 root root 76 2月 7 14:01 go.mod -rw-r--r-- 1 root root 26144 2月 7 14:01 go.sum drwxr-xr-x 9 root root 4096 2月 7 13:34 hello -rw-r--r-- 1 root root 253 2月 7 13:47 hello.go -rwxr-xr-x 1 root root 18996070 2月 7 14:01 xxx root@debian:/home/zxl/workspace/golang/src/beego# ./xxx 2021/02/07 14:02:01.177 [I] http server Running on http://:8080
vim hello.go
package mainimport ("github.com/beego/beego/v2/server/web"
)type MainController struct {web.Controller
}func (this *MainController) Get() {this.Ctx.WriteString("hello world")
}func main() {web.Router("/", &MainController{})web.Run()
}
把上面的代码保存为 hello.go,然后通过命令行进行编译并执行:
$ go build -o hello hello.go
$ ./hello
这个时候你可以打开你的浏览器,通过这个地址浏览 http://127.0.0.1:8080 返回 “hello world”。
那么上面的代码到底做了些什么呢?
- 首先我们导入了包
github.com/beego/beego/v2/server/web
。我们知道 Go 语言里面被导入的包会按照深度优先的顺序去执行导入包的初始化(变量和 init 函数,更多详情),beego 包中会初始化一个 BeeAPP 的应用和一些参数。 - 定义 Controller,这里我们定义了一个 struct 为
MainController
,充分利用了 Go 语言的组合的概念,匿名包含了web.Controller
,这样我们的MainController
就拥有了web.Controller
的所有方法。 - 定义 RESTful 方法,通过匿名组合之后,其实目前的
MainController
已经拥有了Get
、Post
、Delete
、Put
等方法,这些方法是分别用来对应用户请求的 Method 函数,如果用户发起的是 POST 请求,那么就执行Post
函数。所以这里我们定义了MainController
的Get
方法用来重写继承的Get
函数,这样当用户发起 GET 请求的时候就会执行该函数。 - 定义 main 函数,所有的 Go 应用程序和 C 语言一样都是 main 函数作为入口,所以我们这里定义了我们应用的入口。
- Router 注册路由,路由就是告诉 beego,当用户来请求的时候,该如何去调用相应的 Controller,这里我们注册了请求
/
的时候,请求到MainController
。这里我们需要知道,Router 函数的两个参数函数,第一个是路径,第二个是 Controller 的指针。 - Run 应用,最后一步就是把在步骤 1 中初始化的 BeeApp 开启起来,其实就是内部监听了 8080 端口:Go 默认情况会监听你本机所有的 IP 上面的 8080 端口。
停止服务的话,请按 Ctrl+c
。
下面为 windows 下的快捷操作批处理文件:
在 %GOPATH%/src
目录下分别创建文件 step1.install-bee.bat
和 step2.new-beego-app.bat
。
step1.install-bee.bat
文件内容:
set GOPATH=%~dp0..
go build github.com\beego\bee
copy bee.exe %GOPATH%\bin\bee.exe
del bee.exe
pause
step2.new-beego-app.bat
文件内容:
@echo 设置 App 的值为您的应用文件夹名称
set APP=coscms.com
set GOPATH=%~dp0..
set BEE=%GOPATH%\bin\bee
%BEE% new %APP%
cd %APP%
echo %BEE% run %APP%.exe > run.bat
echo pause >> run.bat
start run.bat
pause
start http://127.0.0.1:8080
依次点击上面创建的两个文件即可快速开启 beego 之旅。
以后只需要到您的应用目录下点击 run.bat
即可。
参考链接:
https://beego.me/quickstart
golang beego安装及入门示例相关推荐
- 【157.1】golang+beego零基础入门实践教程it营大地
go 在线工具 6.goLang语言基本数据类型 -整型详解 package main import "fmt" func main () {//1.定义int类型var num ...
- Hadoop:pig 安装及入门示例
pig是hadoop的一个子项目,用于简化MapReduce的开发工作,可以用更人性化的脚本方式分析数据. 一.安装 a) 下载 从官网http://pig.apache.org下载最新版本(目前是0 ...
- ionic安装及入门示例
- beego学习与代码示例WebIM解析-Ali0th
Author : Ali0th Date : 2019-4-26 安装 go get github.com/astaxie/beego # beego go install # 在beego目录下安装 ...
- 性能工具之 Goreplay 安装及入门使用
性能工具之 Goreplay 安装及入门使用 1.Goreplay 介绍 Goreplay 是用 Golang 写的一个 HTTP 实时流量复制工具.功能更强大,支持流量的放大.缩小,频率限制,还支持 ...
- 十九、Beego框架快速入门
Beego框架快速入门 1.框架了解 go语言的web框架:beego,gin,echo等等,那为什么我们选择beego呢? 第一,beego是中国人开发的,开发文档比较详细,beego官网网址: h ...
- [WCF编程]1.WCF入门示例
一.WCF是什么? Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,整合了原有的windows通讯的 .net Remotin ...
- python爬虫入门实例-终于领会python爬虫入门示例
随着人工智能 大数据的火热 Python成为了广大科学家和普通大众的学习语言.在学习Python的过程中 有很多人感到迷茫 不知道自己该从什么地方入手,今天我们就来说一些新手该如何学习Python编程 ...
- Thrift在Windows及Linux平台下的安装和使用示例
thrift介绍 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的RPC(远程服务调用)框架. 本文主要目的是分别介绍在Windows及Linux平台下的Thri ...
最新文章
- SQLSERVER 分页
- SAP PI 业务处理引擎
- Log4Net五步走
- java中的doget_java servlet中doGet()和doPost()方法的用法和区别
- CentOS 7源码安装httpd服务
- 第六届蓝桥杯JavaC组_垒骰子_详解
- JavaScript中的面向对象(1):对象创建模式
- c#异常处理_C#异常处理能力问题和解答 套装2
- 刷题总结——湫湫系列故事——设计风景线(hdu4514 并差集判环+树的直径)
- .NET Core RSA 签名和验签(密钥为 16 进制编码)
- 【软件测试】边界测试中所选择的输入测试数据一定是有效数据(错)
- 【知识索引】【C++入门】
- netty使用(5)client_server一发一回阐释ByteBuffer的使用
- Vigenère密码(Day 1)详解
- 敏感关键词 词库_关键词优化难度分析怎么做?老鸟如何一键筛选优质关键词(悬赏1元)...
- 淘宝中的一些基本CSS代码
- mysql查找jdbc驱动包_查找已安装的JDBC驱动程序
- ssm心理咨询服务平台毕业设计源码324615
- 你所想了解的方正快速开发平台
- CodeCademy | Python | 6. Pyglatin
热门文章
- 【深度学习】19家机构联合发布,200页大模型Roadmap!
- Pandas文本处理双雄extract+extractall
- 【论文解读】​YOLOX: Exceeding YOLO Series in 2021
- 玩双节棍的算法工程师:鱼佬的数据挖掘之路!
- 【推荐系统】推荐系统中的排序学习
- 【Python入门】Python之shutil模块11个常用函数详解
- 【白话机器学习】算法理论+实战之K-Means聚类算法
- 复现经典:《统计学习方法》​第 11 章 条件随机场
- 【技术干货】Spring事务原理一探
- MCtalk教育快报 | 0813