当前位置: 首页 > news >正文

[Beego]1.Beego简介以及beego环境搭建,bee脚手架的使用,创建,运行项目

一.Beego介绍

Beego是一个开源的基于Golang的MVC框架,主要用于Golang Web开发,Beego可以用来快速开发API、Web、后端服务等各种应用。
Golang 的Web开发框架有很多,从 github star 数量来看Gin>Beego>lris>Echo>Revel>Buffalo
目前国内用的比较多的就是Beego和gin两个框架,如果项目比较小,个人开发,并且
只是用Golang来写一些api接口的话,gin是不错的选择,如果团队开发或者不仅要用golang写api,还要用golang写web后端,并且注重代码质量的话建议用Beego

Beego Github 地址:https://github.com/astaxie/beego

Beego官网:http://beego.me

二.Beego脚手架工具bee的安装使用

通过bee脚手架,可以很容易地进行beego项目的创建,热编译,开发,测试和部署

在安装之前,需要先安装golang环境,可以通过如下的方式安装 bee 工具:

1.安装 

 Go1.16 及以前的安装方法

go get -u github.com/beego/bee/v2
Go1.17 之后的安装方法
go install github.com/beego/bee/v2@latest
查看 bee 是否安装成功

2.bee new 创建普通项目

在命令行执行 bee new <项目名>可以创建一个新的项目,bee 工具的命令需要在 $GOPATH/src 下执行,命令执行完毕后,会创建一个 beego 的典型 mvc 架构的项目包

 3.bee api 创建只开发 APi 的应用

beego 也可以用来开发 API 应用,在命令行输入 bee api <name> 创建新的 API 应用
bee api apidemo

 4.bee run 运行项目

在项目目录下执行命令行 bee run 可以进行项目编译

bee run

5.bee pack 打包项目

也是在项目目录下执行命令,在命令行输入 bee pack 会将项目打包成 zip 压缩文件包

linux 打包: bee pack -be GOOS=linux
windows 打包: bee pack -be GOOS=windows

6.bee version 查看版本

7.bee generate 用于自动生成代码

该命令用于自动化生成代码 ,bee generate 可以创建 controllerview,modeldoc 等等 

生成一个控制器

bee generate controller goods

 生成一个 modal

bee generate model goods

更多bee的用法见:https://beego.me/docs/install/bee.md

三.下载安装 Beego 相关的包 

1.注意事项:

  • 电脑上面必须安装 go 环境
  • 电脑上面必须安装 git

2.安装 Beego

go get github.com/astaxie/beego

3.常见问题

  • git 没有安装,请自行安装不同平台的 git,如何安装请自行搜索
  • git https 无法获取,请配置本地的 git,关闭 https 验证
  • git config --global http.sslVerify false
  • 无法上网怎么安装 beego,目前没有好的办法,可以科学上网

四.Beego 中创建项目以及项目目录结构分析

1.创建项目以及运行

Beego之Bee安装以及创建,运行项目

2. 项目目录结构分析

3.演示一下创建控制器,视图,路由,以及浏览器访问

五.Beego 升级

beego 升级分为 go 方式升级和源码下载升级

1.Go 升级

通过该方式用户可以升级 beego 框架,强烈推荐该方式:
go get -u github.com/beego/beego/v2

2.源码下载升级

用户访问 https://github.com/astaxie/beego , 下载源码,然后覆盖到 $GOPATH/src/github.com/astaxie/beego 目录,然后通过本地执行安装就可以升级了:
go install github.com/beego/beego/v2

好了,搭建bee项目操作就到此完成了,下面看一下Beego控制器、路由、Get、 Post, Put,Delete相关知识

http://www.lryc.cn/news/280114.html

相关文章:

  • Tomcat 静态资源访问与项目根路径设置(AI问答)
  • Docker实战09|使用AUFS包装busybox
  • 什么是uni.request()?如何使用它?
  • 用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化
  • 华为常用的命令——display,记得点赞收藏!
  • Costco攻入山姆大本营
  • 什么是常量?如何区分常量和变量?
  • uniapp返回上一页并刷新数据
  • LeetCode 0083.删除排序链表中的重复元素:模拟
  • Javaweb之SpringBootWeb案例新增部门的详细解析
  • 基于微信小程序的音乐平台 开源项目
  • uniapp 微信小程序跳转外部链接
  • 【STM32】FLASH闪存
  • 滴水内存地址堆栈
  • Laravel中的lockForUpdate悲观锁
  • BikeDNA(八)外在分析:OSM 与参考数据的比较2
  • 28 星际旋转
  • 测试人员必备基本功(3)
  • 记一次数据修复,需要生成十万条sql进行数据回滚
  • [paddle]paddlehub部署paddleocr的hubserving服务
  • 2024校招,网易互娱游戏测试工程师一面
  • Linux Ubuntu搭建我的世界Minecraft服务器实现好友远程联机MC游戏
  • Springboot对接ceph集群以及java利用s3对象网关接口与ceph集群交互
  • nrm使用
  • 06-微服务OpenFeigh和Sentinel持久化
  • docker 安装redis (亲测有效)
  • 利用GitHub开源项目ChatGPTNextWeb构建属于自己的ChatGPT - Docker
  • Vue3使用ElementPlus中的el-upload手动上传并调用上传接口
  • 【Github3k+⭐️】《CogAgent: A Visual Language Model for GUI Agents》译读笔记
  • FF的异步清零端口需要时钟吗?--不需要