简介

  1. BeeGo是一个快速开发Go而应用的HTTP框架,他可以用来快速开发API,web以及后端服务等各种应用,是一个restful 的框架,主要涉及灵感来源于tornado,sinatr和flask这三个框架,但是结合了Go本身一些的特性(interface,struct嵌入等)而设计的一个框架
  2. 官网地址如下: https://beego.me/

架构

beego有八个模块,分别是

  1. cache
  2. config:
  3. context:
  4. httplibs: curl函数
  5. logs:
  6. orm
  7. session
  8. toolbox

执行逻辑

项目结构

项目结构要求你必须按照下面的目录结构去做

  1. M(models目录)
  2. V(views目录)
  3. C(controllers目录)
  4. main.go是入口文件。

安装beego

可以使用 go get 来安装 ,比如:

go get github.com/astaxie/beego

创建项目目录

创建项目目录我们可以使用bee这个工具,安装地址为:

go get github.com/beego/bee

安装好以后两个命令我们需要注意的

  1. new命令,new命令是一个新建web项目的,我们在命令行下执行 bee new 项目名称 就可以创建一个新的项目,但是注意该命令必须在 $GOPATH/src下执行
  2. api命令,上面的new命令用来创建web项目,不过很多用户使用beego来开发api应用,所以这个api命令就是用来创建API应用的。

安装好以后,我们使用bee命令来看看。

由于我这里的是windows环境下,所以需要在GOPATH后执行这个命令,例如

H:\Go\GoLearn>%GOPATH%/bin/bee

如果能够正常显示help信息,那么就算是安装成功了,那么就开始创建一个项目吧

创建一个web项目

我们使用bee来床架, 记住先切换到src下,

H:\Go\GoLearn\src>%GOPATH%/bin/bee new WEB
______
| ___ \
| |_/ / ___ ___
| ___ \ / _ \ / _ \
| |_/ /| __/| __/
\____/ \___| \___| v1.9.1
2017/11/05 19:31:52 INFO ▶ 0001 Creating application...
create H:\Go\GoLearn\src\WEB\
create H:\Go\GoLearn\src\WEB\conf\
create H:\Go\GoLearn\src\WEB\controllers\
create H:\Go\GoLearn\src\WEB\models\
create H:\Go\GoLearn\src\WEB\routers\
create H:\Go\GoLearn\src\WEB\tests\
create H:\Go\GoLearn\src\WEB\static\
create H:\Go\GoLearn\src\WEB\static\js\
create H:\Go\GoLearn\src\WEB\static\css\
create H:\Go\GoLearn\src\WEB\static\img\
create H:\Go\GoLearn\src\WEB\views\
create H:\Go\GoLearn\src\WEB\conf\app.conf
create H:\Go\GoLearn\src\WEB\controllers\default.go
create H:\Go\GoLearn\src\WEB\views\index.tpl
create H:\Go\GoLearn\src\WEB\routers\router.go
create H:\Go\GoLearn\src\WEB\tests\default_test.go
create H:\Go\GoLearn\src\WEB\main.go
2017/11/05 19:31:52 SUCCESS ▶ 0002 New application successfully created!

如上图所示,创建成功了。

new比api创建出来的项目,多出来了static,views等目录。

run 这个web项目

我们启动刚才创建的web目录,先切换到刚才创建WEB目录,然后bee run下就好使了,如下所示

H:\Go\GoLearn\src>cd WEB
H:\Go\GoLearn\src\WEB>%GOPATH%/bin/bee run
______
| ___ \
| |_/ / ___ ___
| ___ \ / _ \ / _ \
| |_/ /| __/| __/
\____/ \___| \___| v1.9.1
2017/11/05 19:36:15 INFO ▶ 0001 Using 'WEB' as 'appname
2017/11/05 19:36:15 INFO ▶ 0002 Initializing watcher...
WEB/controllers
WEB/routers
WEB

启动成功后,我们访问 http://127.0.0.1:8080/ 就可以看到beego的页面了。

创建API项目

使用api命令来创建,如下所示:

H:\Go\GoLearn\src>%GOPATH%/bin/bee api api
______
| ___ \
| |_/ / ___ ___
| ___ \ / _ \ / _ \
| |_/ /| __/| __/
\____/ \___| \___| v1.9.1
2017/11/05 19:34:03 INFO ▶ 0001 Creating API...
create H:\Go\GoLearn\src\api
create H:\Go\GoLearn\src\api\conf
create H:\Go\GoLearn\src\api\controllers
create H:\Go\GoLearn\src\api\tests
create H:\Go\GoLearn\src\api\conf\app.conf
create H:\Go\GoLearn\src\api\models
create H:\Go\GoLearn\src\api\routers\
create H:\Go\GoLearn\src\api\controllers\object.go
create H:\Go\GoLearn\src\api\controllers\user.go
create H:\Go\GoLearn\src\api\tests\default_test.go
create H:\Go\GoLearn\src\api\routers\router.go
create H:\Go\GoLearn\src\api\models\object.go
create H:\Go\GoLearn\src\api\models\user.go
create H:\Go\GoLearn\src\api\main.go
2017/11/05 19:34:03 SUCCESS ▶ 0002 New API successfully created!

1. BeeGo 介绍与项目的创建,启动的更多相关文章

  1. 一、Beego介绍与项目创建及启动

    一.beego 简介 beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API.Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 torna ...

  2. Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查

    一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...

  3. Vue环境搭建-项目的创建-启动生命周期-组件的封装及应用

    vue项目环境的搭建 """ node >>> python:node是用c++编写用来运行js代码的 npm(cnpm) >>> p ...

  4. maven系列之二maven项目的创建和maven项目的结构

    maven系列之一简单介绍了maven的基本信息,安装和配置,大家对maven有一个大概的了解,但是在maven项目开发中远远不够,为了进一步了解maven,现在我们介绍maven项目的创建和mave ...

  5. beego学习笔记一:创建第一个beego Web项目 转

    前提工作 环境搭建,可以参考如下两篇教程:搭建Go语言环境1搭建Go语言环境2 安装beego beego 的安装是典型的 Go 安装包的形式: go get github.com/astaxie/b ...

  6. [Xcode 实际操作]一、博主领进门-(1)iOS项目的创建和项目模板的介绍

    目录:[Swift]Xcode实际操作 本文将演示iOS项目的创建和项目模板的介绍. [Create a new Xcode project]创建一个新的项目. 在弹出的模板窗口中,显示了所有的项目模 ...

  7. dya49:django:wsgrief&模板渲染Jinjia2&django的MTV/MVC框架&创建/启动一个django项目

    目录 1.自定义web框架wsgiref版 2.自定义web框架wsgiref版-优化版 3.模板渲染JinJa2 4.MTV和MVC框架 5.django:下载安装&创建启动 自定义web框 ...

  8. MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下   数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...

  9. [转]MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下   数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...

随机推荐

  1. JAVA实用工具--javamail

    在实现javamail之前首先要搭建邮件服务器 James 在进行WEB程序开发的时候需要使用Tomcat服务器,但是Tomcat服务器并不支持邮件的处理操作,所以要想进行邮件的发送,还需要配置一个单 ...

  2. 如何让Composer的autoload支持自定义文件后缀名

    PHP的Composer工具规范了我们对系统各种资源库的加载格式,借助于PHP的自动加载机制,可以很大程度上简化在应用开发过程中的类库文件引用场景.但到目前为止,它有个不是问题的问题,就是文件后缀名只 ...

  3. [iptables]iptables常规设置

    转自:http://leil.plmeizi.com/archives/centos-iptables%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95%E8%BD%AC/ 关闭 ...

  4. 【进阶修炼】——改善C#程序质量(5)

    71, 区分异步和多线程的应用场景. 计算机的很多硬件,如硬盘,光驱,声卡,网卡都有DMA(Direct Memory Access)功能,它可以不占用cpu的资源,而异步的提出恰恰就是基于这个的.而 ...

  5. java json转换

    https://blog.csdn.net/WillJGL/article/details/77866224 SpringBoot中如果需要实现json的序列化和反序列化,我们会使用json解析工具. ...

  6. underscore-1.8.3-analysis.js

    // Underscore.js 1.8.3 // http://underscorejs.org // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud an ...

  7. excel数据批量导入

    1.  html <form id="form_search" action="@Url.Action("UpLoadFile")" ...

  8. loadrunner 性能测试报error-27796的解决

    网上观点: 在注册表HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters里,有如下两个键值:TcpTimedWai ...

  9. UPNP

    基本概念 UPnP 的应用范围非常大,以致足够可以实现许多现成的.新的及令人兴奋的方案,包括家庭自动化.打印.图片处理.音频 / 视频娱乐.厨房设备.汽车网络和公共集会场所的类似网络.它可以充分发挥 ...

  10. Numpy 的数学和统计方法

    可以通过数组上的一组数学函数对整个数组或某个轴向的数据进行统计计算.sum.mean以及标准差std等 聚合计算(aggregation, 通常叫做约简(reduction))既可以当做数组的实例方法 ...