zoukankan      html  css  js  c++  java
  • Go语言之高级篇beego框架安装与使用

     

    一、beego框架

    1、beego框架简介

    beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、struct 嵌入等)而设计的一个框架。

    参考官网:https://beego.me/docs/intro/

    2、beego 的执行逻辑

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

    3、beego 项目结构
    一般的 beego 项目的目录如下所示:

    ├── conf
    │ └── app.conf
    ├── controllers
    │ ├── admin
    │ └── default.go
    ├── main.go
    ├── models
    │ └── models.go
    ├── static
    │ ├── css
    │ ├── ico
    │ ├── img
    │ └── js
    └── views
    ├── admin
    └── index.tpl

    从上面的目录结构我们可以看出来 M(models 目录)、V(views 目录)和 C(controllers 目录)的结构, main.go 是入口文件。

    4、beego框架安装

    go get github.com/astaxie/beego

    参考:https://github.com/astaxie/beego

    设置GoPATH路径:

     5、bee工具

    go get github.com/beego/bee
    

    new命令是新建一个Web项目,我们在命令行下执行bee new<项目名>就可以创建一个新的项目。但是注意该命令必段在$GOPATH/src 下执行。

    api 命令 是用来创建API应用的。

     安装步骤:

    #绝对路径,运行:bee

    #安装bee
    C:Users560140>go get github.com/beego/bee
    
    #绝对路径,运行:bee
    C:Users560140>%GOPATH%/bin/bee
    Bee is a Fast and Flexible tool for managing your Beego Web Application.
    
    USAGE
        bee command [arguments]
    
    AVAILABLE COMMANDS
    
        version     Prints the current Bee version
        migrate     Runs database migrations
        api         Creates a Beego API application
        bale        Transforms non-Go files to Go source files
        fix         Fixes your application by making it compatible with newer versio
    ns of Beego
        dlv         Start a debugging session using Delve
        dockerize   Generates a Dockerfile for your Beego application
        generate    Source code generator
        hprose      Creates an RPC application based on Hprose and Beego frameworks
        new         Creates a Beego application
        pack        Compresses a Beego application into a single file
        rs          Run customized scripts
        run         Run the application by starting a local development server
        server      serving static content over HTTP on port
    
    Use bee help [command] for more information about a command.
    
    ADDITIONAL HELP TOPICS
    
    Use bee help [topic] for more information about that topic

    # 设置环境变量临时生效

    #设置环境变量,临时生效
    
    C:Users560140>set PATH=%PATH%;%GOPATH%/bin
    
    #运行bee
    C:Users560140>bee
    Bee is a Fast and Flexible tool for managing your Beego Web Application.
    
    USAGE
        bee command [arguments]
    
    AVAILABLE COMMANDS
    
        version     Prints the current Bee version
        migrate     Runs database migrations
        api         Creates a Beego API application
        bale        Transforms non-Go files to Go source files
        fix         Fixes your application by making it compatible with newer versio
    ns of Beego
        dlv         Start a debugging session using Delve
        dockerize   Generates a Dockerfile for your Beego application
        generate    Source code generator
        hprose      Creates an RPC application based on Hprose and Beego frameworks
        new         Creates a Beego application
        pack        Compresses a Beego application into a single file
        rs          Run customized scripts
        run         Run the application by starting a local development server
        server      serving static content over HTTP on port
    
    Use bee help [command] for more information about a command.
    
    ADDITIONAL HELP TOPICS
    
    Use bee help [topic] for more information about that topic.
    

      

     6、beego创建项目

    创建web项目: bee new WEB 

    C:Users560140>bee new WEB
    ______
    | ___ 
    | |_/ /  ___   ___
    | ___  / _  / _ 
    | |_/ /|  __/|  __/
    \____/  \___| \___| v1.10.0
    2019/01/29 14:25:14 WARN     ▶ 0001 You current workdir is not inside $GOPATH/sr
    c.
    2019/01/29 14:25:14 INFO     ▶ 0002 Creating application...
            create   D:GoFilessrcWEB
            create   D:GoFilessrcWEBconf
            create   D:GoFilessrcWEBcontrollers
            create   D:GoFilessrcWEBmodels
            create   D:GoFilessrcWEB
    outers
            create   D:GoFilessrcWEB	ests
            create   D:GoFilessrcWEBstatic
            create   D:GoFilessrcWEBstaticjs
            create   D:GoFilessrcWEBstaticcss
            create   D:GoFilessrcWEBstaticimg
            create   D:GoFilessrcWEBviews
            create   D:GoFilessrcWEBconfapp.conf
            create   D:GoFilessrcWEBcontrollersdefault.go
            create   D:GoFilessrcWEBviewsindex.tpl
            create   D:GoFilessrcWEB
    outers
    outer.go
            create   D:GoFilessrcWEB	estsdefault_test.go
            create   D:GoFilessrcWEBmain.go
    2019/01/29 14:25:14 SUCCESS  ▶ 0003 New application successfully created!
    

    创建API项目: bee api API

    C:Users560140>bee api API
    ______
    | ___ 
    | |_/ /  ___   ___
    | ___  / _  / _ 
    | |_/ /|  __/|  __/
    \____/  \___| \___| v1.10.0
    2019/01/29 14:25:32 WARN     ▶ 0001 You current workdir is not inside $GOPATH/sr
    c.
    2019/01/29 14:25:32 INFO     ▶ 0002 Creating API...
            create   D:GoFilessrcAPI
            create   D:GoFilessrcAPIconf
            create   D:GoFilessrcAPIcontrollers
            create   D:GoFilessrcAPI	ests
            create   D:GoFilessrcAPIconfapp.conf
            create   D:GoFilessrcAPImodels
            create   D:GoFilessrcAPI
    outers
            create   D:GoFilessrcAPIcontrollersobject.go
            create   D:GoFilessrcAPIcontrollersuser.go
            create   D:GoFilessrcAPI	estsdefault_test.go
            create   D:GoFilessrcAPI
    outers
    outer.go
            create   D:GoFilessrcAPImodelsobject.go
            create   D:GoFilessrcAPImodelsuser.go
            create   D:GoFilessrcAPImain.go
    2019/01/29 14:25:33 SUCCESS  ▶ 0003 New API successfully created!
    

      

     7、在LiteIDE中打开WEB项目

    把WEB项目导入到LiteIDE中

    执行项目:

    D:GoFilessrcWEB>bee run
    ______
    | ___ 
    | |_/ /  ___   ___
    | ___  / _  / _ 
    | |_/ /|  __/|  __/
    \____/  \___| \___| v1.10.0
    2019/01/29 14:33:35 INFO     ▶ 0001 Using 'WEB' as 'appname'
    2019/01/29 14:33:35 INFO     ▶ 0002 Initializing watcher...
    WEB/controllers
    WEB/routers
    WEB
    2019/01/29 14:33:41 SUCCESS  ▶ 0003 Built Successfully!
    2019/01/29 14:33:41 INFO     ▶ 0004 Restarting 'WEB.exe'...
    2019/01/29 14:33:41 SUCCESS  ▶ 0005 './WEB.exe' is running...
    2019/01/29 14:33:41.919 [I] [asm_amd64.s:1333]  http server Running on http://:8
    080
    

      

     

  • 相关阅读:
    CommonJs模块和ES6模块的区别
    【代码笔记】Web-JavaScript-JavaScript JSON
    【代码笔记】Web-JavaScript-JavaScript表单验证
    【代码笔记】Web-JavaScript-JavaScript调试
    【代码笔记】Web-JavaScript-JavaScript错误
    【代码笔记】Web-JavaScript-JavaScript正则表达式
    【代码笔记】Web-JavaScript-JavaScript 类型转换
    【代码笔记】Web-Javascript-Javascript typeof
    【代码笔记】Web-Javascript-javascript break和continue语句
    【代码笔记】Web-JavaScript-javascript while循环
  • 原文地址:https://www.cnblogs.com/nulige/p/10333756.html
Copyright © 2011-2022 走看看