简介

  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. WCF终结点——终结点地址(EndpointAddress)

    终结点的地址的Uri属性作为终结点地址的唯一标示. 包括客户端终结点和服务端终结点. 一.服务端终结点: 服务端的终结点通过宿主的添加方法暴露出来,从而成为可以调用的资源. 下面是将服务绑定到宿主的代 ...

  2. composer安装与应用

    操作环境:centos 6.5+32bit 1. 建立项目目录 mkdir test cd test 2. 在当前目录下安装: $ curl -sS https://getcomposer.org/i ...

  3. Win10下打开chm文档提示无法显示该页的解决方法

    一是检查chm文件属性里最下面是否有个“解除锁定”,如有,点击“解除锁定”按钮就可以了. 如果没有上面提到的“解除锁定”,检查chm文件存放的路径.本例中,由于chm文件的存放路径中不能带有特殊字符“ ...

  4. RavenDb学习(一)设计模式介绍

    RavenDb是一个文档型的数据库,和芒果Db是一个类型的东西,但是公司选择了它,主要是因为它对事务的支持比较好,芒果Db在事务方面有问题. 下面有一个例子. 在关系型数据库中,我们要展示以上的内容, ...

  5. 选择合适NFC标签

    NFC论坛选择的初始标签格式适用于最广泛的应用程序和装置性能: 类型1基于ISO14443A,目前由Innovision研究和技术公司独家供应 (TopazTM),具有96字节内存,成本低,应用广泛. ...

  6. eclipse如何设置高亮代码的背景色,比如选中某个单词,高亮所有的

    设置方法如下: 1.单击IDE顶部Window菜单下的Prefences,如图: 2.在打开对话框的左侧树上,找到Java节点下的Editor中的Mark Occurren,如图: 3.点击Mark ...

  7. 安卓程序代写 网上程序代写[原]Android项目中string.xml占位符

    开发中经常遇到这样的情况 , 在string.xml中用到以下占位符 <string name="delete_success">删除<xliff:g id=&q ...

  8. Linux 客户端bind函数的使用

    无连接的socket的客户端和服务端以及面向连接socket的服务端通过调用bind函数来配置本地信息. 使用bind函数时,通过将my_addr.sin_port置为0,函数会自动为你选择一个未占用 ...

  9. Sword pcre库函数学习一

    0.pcre_exec 原型: #include <pcre.h> int pcre_exec(const pcre *code, const pcre_extra *extra, con ...

  10. 解决Qt中文乱码以及汉字编码的问题(UTF-8/GBK)

    一.Qt环境设置 文件从window上传到Ubuntu后会显示乱码,原因是因为ubuntu环境设置默认是utf-8,Windows默认都是GBK.Windows环境下,Qt Creator,菜单-&g ...