• beego框架入门(1)


    介绍

    beego 官方定义为一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架。

    beego框架有以下的一些特点:

    1. 简单化

      RESTful 支持、MVC 模型,可以使用 bee 工具快速地开发应用,包括监控代码修改进行热编译、自动化测试代码以及自动化打包部署。

    2. 智能化

      支持智能路由、智能监控,可以监控 QPS、内存消耗、CPU 使用,以及 goroutine 的运行状况,让您的线上应用尽在掌握。

    3. 模块化

      beego 内置了强大的模块,包括 Session、缓存操作、日志记录、配置解析、性能监控、上下文操作、ORM 模块、请求模拟等强大的模块,足以支撑你任何的应用。

    4. 高性能

      beego 采用了 Go 原生的 http 包来处理请求,goroutine 的并发效率足以应付大流量的 Web 应用和 API 应用,目前已经应用于大量高并发的产品中。

    安装

    需要注意,安装beego框架之前应该先将GOPATH配置好,如果你是新手,建议关闭go mod,这样能够降低安装难度。

    如果你是windows操作系统, 那么需要先安装git。点击这里下载安装。

    安装beego框架需要通过go get命令来进行安装。

    go get github.com/astaxie/beego
    

    如果项目需要升级beego,有两种方式可以选择:

    第一种方式是官方推荐方式,通过go get命令进行升级。

    go get -u github.com/astaxie/beego
    

    第二种方式是通过源码下载覆盖之前的源码方式进行升级(点击下载源码)。下载源码后,将源码覆盖到$GOPATH/src/github.com/astaxie/beego目录,执行下面的命令就可以完成升级。

    go install  github.com/astaxie/beego
    

    bee工具的安装

    bee工具主要作用是协助beego进行go项目开发,通过bee,可以实现对beego项目的创建、热编译、开发、测试和部署。

    bee工具可以通过下面的命令来进行安装:

    go get github.com/beego/bee
    

    默认情况下,bee的可执行文件会存储在GOPATH/bin目录下。

    官方建议将$GOPATH/bin目录配置到环境变量当中去。如果之前没有进行相应的配置,可以自行根据操作系统进行百度,如果不配置此项,那么后续的使用将无法进行。

    bee常用命令

    具体的使用可以 进入官网查看

    new命令

    通过new命令可以快速的创建一个beego项目,不过使用这条命令应该将目录切换到$GOPATH/src下执行,最后会生成如下的项目结构:

    bee new myproject
    [INFO] Creating application...
    /gopath/src/myproject/
    /gopath/src/myproject/conf/
    /gopath/src/myproject/controllers/
    /gopath/src/myproject/models/
    /gopath/src/myproject/static/
    /gopath/src/myproject/static/js/
    /gopath/src/myproject/static/css/
    /gopath/src/myproject/static/img/
    /gopath/src/myproject/views/
    /gopath/src/myproject/conf/app.conf
    /gopath/src/myproject/controllers/default.go
    /gopath/src/myproject/views/index.tpl
    /gopath/src/myproject/main.go
    13-11-25 09:50:39 [SUCC] New application successfully created!
    
    myproject
    ├── conf
    │   └── app.conf
    ├── controllers
    │   └── default.go
    ├── main.go
    ├── models
    ├── routers
    │   └── router.go
    ├── static
    │   ├── css
    │   ├── img
    │   └── js
    ├── tests
    │   └── default_test.go
    └── views
        └── index.tpl
    
    8 directories, 4 files
    

    api命令

    可以通过api命令快速创建一个api应用。如下:

    bee api apiproject
    create app folder: /gopath/src/apiproject
    create conf: /gopath/src/apiproject/conf
    create controllers: /gopath/src/apiproject/controllers
    create models: /gopath/src/apiproject/models
    create tests: /gopath/src/apiproject/tests
    create conf app.conf: /gopath/src/apiproject/conf/app.conf
    create controllers default.go: /gopath/src/apiproject/controllers/default.go
    create tests default.go: /gopath/src/apiproject/tests/default_test.go
    create models object.go: /gopath/src/apiproject/models/object.go
    create main.go: /gopath/src/apiproject/main.go
    
    apiproject
    ├── conf
    │   └── app.conf
    ├── controllers
    │   └── object.go
    │   └── user.go
    ├── docs
    │   └── doc.go
    ├── main.go
    ├── models
    │   └── object.go
    │   └── user.go
    ├── routers
    │   └── router.go
    └── tests
        └── default_test.go
    

    该命令还支持一些自定义参数自动连接数据库创建相关 model 和 controller:
    bee api [appname] [-tables=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"]
    如果 conn 参数为空则创建一个示例项目,否则将基于链接信息链接数据库创建项目。

    run命令

    我们在开发 Go 项目的时候最大的问题是经常需要自己手动去编译再运行,bee run 命令是监控 beego 的项目,通过 fsnotify监控文件系统。但是注意该命令必须在 $GOPATH/src/appname 下执行。
    这样我们在开发过程中就可以实时的看到项目修改之后的效果:

    bee run
    13-11-25 09:53:04 [INFO] Uses 'myproject' as 'appname'
    13-11-25 09:53:04 [INFO] Initializing watcher...
    13-11-25 09:53:04 [TRAC] Directory(/gopath/src/myproject/controllers)
    13-11-25 09:53:04 [TRAC] Directory(/gopath/src/myproject/models)
    13-11-25 09:53:04 [TRAC] Directory(/gopath/src/myproject)
    13-11-25 09:53:04 [INFO] Start building...
    13-11-25 09:53:16 [SUCC] Build was successful
    13-11-25 09:53:16 [INFO] Restarting myproject ...
    13-11-25 09:53:16 [INFO] ./myproject is running...
    

    我们打开浏览器就可以看到效果 http://localhost:8080/,会呈现出beego的欢迎页面。

  • 相关阅读:
    SpringBoot Jpa 双数据源mysql + oracle + liquibase+参考源码
    C#:将字符串中连续空格作为分隔符获取多段模糊查询的字符串
    C# 传入参数2021-05-18T00:00:00.000Z使用ToDateTime日期在此基础上加8小时
    修改DbContext并不是线程安全的bug处理。
    产品经理推荐书籍
    抽象类、类和接口
    git 分支合并主干出现冲突的解决办法
    HttpClient请求设置Content-Type标头空格问题
    C# 3Des加密解密
    WPF 颜色选择器
  • 原文地址:https://www.cnblogs.com/liujunhang/p/12611470.html
Copyright © 2020-2023  润新知