beego框架_golang web框架_使用介绍
创始人
2024-12-27 03:37:03
0

beego简介

beego是一个用于快速开发Go应用的http框架,由Go语言方面的技术大牛设计。beego可以用来快速开发API、Web、后端服务等各种应用,是一个RESTful的框架,主要设计灵感来源于tornado、sinatra、flask这三个框架,但结合了Go本身的一些特性(如interface、struct继承等)而设计。

beego特性
  • MVC:清晰的分层结构。
  • REST:支持RESTful架构风格。
  • 智能路由:自动化路由管理。
  • 日志调试:内置日志系统,方便调试。
  • 配置管理:统一的配置管理。
  • 模板自动渲染:简化模板渲染过程。
  • layout设计:支持布局设计。
  • 中间件插入逻辑:灵活的中间件机制。
  • 方便的JSON/XML服务:简化数据格式的处理。

官方源代码地址: GitHub - beego/bee

beego快速入门

bee工具简介

bee工具是为了协助快速开发beego项目而创建的,通过bee您可以轻松进行beego项目的创建、热编译、开发、测试和部署。

参考链接:bee工具的使用

bee工具的安装
go get github.com/beego/bee 

安装完成后,bee可执行文件默认存放在 G O P A T H / b i n 中,您需要将 GOPATH/bin中,您需要将 GOPATH/bin中,您需要将GOPATH/bin添加到您的环境变量中,才可以进行下一步。

使用new命令创建web项目

new命令用于新建一个Web项目,在命令行下执行bee new <项目名>就可以创建一个新项目。注意该命令必须在 G O P A T H [ 表情 ] c 下执行。最终在 GOPATH[表情]c下执行。最终在 GOPATH[表情]c下执行。最终在GOPATH[表情]c相应目录下生成如下结构的项目:

webproject ├── conf │   └── app.conf ├── controllers │   └── default.go ├── main.go ├── models ├── routers │   └── router.go ├── static │   ├── css │   ├── img │   └── js ├── tests │   └── default_test.go └── views     └── index.tpl 

从目录结构中可以看到M(models目录)、V(views目录)和C(controllers目录)的结构,main.go是入口文件。

使用api命令创建api应用项目

new命令用于新建Web项目,但许多用户使用beego开发API应用。api命令用于创建API应用:

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 

与Web项目相比,少了static和views目录,多了一个tests模块,用于单元测试。

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

使用run命令运行项目

在开发Go项目时,常需要手动编译再运行,bee run命令通过fsnotify监控文件系统,实时监控beego项目。注意该命令必须在$GOPATH[表情]c/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/

效果预览

如果修改了controllers目录下的default.go文件,可以看到命令行输出:

13-11-25 10:11:20 [EVEN] "/gopath/src/myproject/controllers/default.go": DELETE|MODIFY 13-11-25 10:11:20 [INFO] Start building... 13-11-25 10:11:20 [SKIP] "/gopath/src/myproject/controllers/default.go": CREATE 13-11-25 10:11:23 [SKIP] "/gopath/src/myproject/controllers/default.go": MODIFY 13-11-25 10:11:23 [SUCC] Build was successful 13-11-25 10:11:23 [INFO] Restarting myproject ... 13-11-25 10:11:23 [INFO] ./myproject is running... 

刷新浏览器后可以看到新的修改内容已经输出。

参考链接:
(https://www.topgoer.com/beego%E6%A1%86%E6%9E%B6/beego%E5%AE%89%E8%A3%85/bee%E5%B7%A5%E5%85%B7%E7%9A%84%E4%BD%BF%E7%94%A8.html)

(https://blog.csdn.net/loongshawn/article/details/55252990)

相关内容

热门资讯

据文件显示!钱柜娱乐辅助透视挂... 据文件显示!钱柜娱乐辅助透视挂,空谷幽兰真的有挂,确实有挂实锤;1)钱柜娱乐辅助插件:进一步探索钱柜...
黑科技辅助挂!科乐吉林麻将辅助... 黑科技辅助挂!科乐吉林麻将辅助透视挂,兴动茶馆真的有挂,好像竟然有挂1、科乐吉林麻将有没有辅助教程、...
据权威媒体报道!徽友辅助透视挂... 据权威媒体报道!徽友辅助透视挂,皮皮湖南跑胡子确实有挂,真是证实有挂1、上手简单,内置详细流程视频教...
最终!新武宁双扣辅助透视挂,大... 最终!新武宁双扣辅助透视挂,大同麻将真的是有挂,原来有挂规律1、下载好新武宁双扣透视辅助下载之后点击...
攻略辅助挂!325互动辅助透视... 攻略辅助挂!325互动辅助透视挂,97国际真的有挂,切实有挂技术325互动破解侠是真的助透视。每个模...
更值得关注的是!凉山跑得快辅助... 更值得关注的是!凉山跑得快辅助透视挂,闲趣竞技真的是有挂,果然有挂攻略1、让任何用户在无需凉山跑得快...
今天上午!乐山游戏中心辅助透视... 今天上午!乐山游戏中心辅助透视挂,天天河北麻将是有挂,确实有挂秘籍1、下载好乐山游戏中心透视辅助下载...
截至目前!v湘西辅助透视挂,欢... 截至目前!v湘西辅助透视挂,欢乐惠游是真的有挂,好像有挂规律1、让任何用户在无需欢乐惠游安装教程第三...
针对!鹤格娱乐辅助透视挂,兴动... 针对!鹤格娱乐辅助透视挂,兴动助手真的有挂,好像有挂细节一、兴动助手游戏安装教程牌型概率发牌机制”必...
随着!南星游戏辅助透视挂,无忧... 随着!南星游戏辅助透视挂,无忧确实有挂,总是有挂讲解进入游戏-大厅左侧-新手福利-激活码辅助透视技能...