【实例简介】
Beego中文文档PDF版,便于平板上阅读查看。。。。。。。
快速入门」
快速入门
安装
brego包含一些示例应用程序以帮您学习并使用 brego应用框架
您需要安装Go1.1+以确保所有功能的正常使用
你需要安装或者升级eego和Bee的开发T具
I S go get-u github. com/astaxie/beego
ISgogetougithub.com/beego/bee
为了更加方便的操作,请将$ GOPATH/bin加入到你的$PATH变量中。请确保在此之前您已经添加了$ GOPATH变
1#如果您还没添加 SGOPATH变量
2 Secho'export GOPATH=" HOME/go">-poe#或者-1z3sh,-/ cshrc,您所使用的sh对应的置文件
3
4.#如果您已经添加了$ GOPATH交量
5.$ echo'export PATH=$ GOPATH/bin:$PATH"s-/. profile#或者-. sHrc,-, cshrc,您所使用的sh对应的配置文件
6. exec SSHELL
想要快速建立一个应用来检测安装?
1.$cd SGOPATH/src
s be
3. s cd hello
I s bee run hello
Windows台卜输入
I >cd %GOPATH%/src
2. >bee new hello
I >cd hello
4.>bee run hello
这些指令帮助您:
1.安装 meego到您的$ GOPATH中。
2.在您的计算机上安装BeeL具。
3.创建一个名为“he1lo”的应用程序。
4.启动热编译
旦稈序开始运行,您就可以在浏览器中打开 ht tp: //localhost: 8080/进行访问。
简单示例
下面这个示例程序将会在浏览器中打印“ Hello world”,以此说明仼用 brego构建Web应用程序是多么的简单
1.package main
2.
I import(
github. com/astaxie/beego
5.
6.
7. type MainController struct i
8
meego. Controlle
9
11.func(this *Main Controller) GetO i
isCtx. Write String hello world)
14
15.func mains
beego. Router("/",&MainControllert)
17
meego. Runo
1.}
把上面的代码保存为 hello.go,然后通过命令行进行编译并执行:
1.$go build-o hello hello. go
2. $/hello
这个时候你可以打开你的浏览器,通过这个地址浏览http://127.0.0.1:8080返回helloworld
那么上面的代码到底做了些什么呢?
L.首先我们导入了包 github. com/astaxie/beego.我们知道Go语言里面被导入的包会按照深度优先的顺序去执行导入包的初始
化(变量和init函数,更多详情),bego包中会初始化个 BeeAPp的应用和些参数
2.定义 Controller,这里我们定义了一个 struc t为 Maincontroller,充分利用了语言的组合的概念,匿名包含了
meego. Controller,这样我们的 Main Controller就拥有了 meego. Controller的所有方法。
3.定义RsTu方法,通过居名组合之后,其实目前的 Main controller已经拥有了Get、Post、Dete、Put等方
法,这些方法是分别用来对应用户请求的 Method函数,如果用户发起的是PsT清求,那么就执行Post函数。所以这里
我们定义∫ Main Controller的cet方法用来重写缘承的cet函数,这样当用户发起GEr请求的时候就会执行该函
4.定义main函数,所有的Go应用程序和C语言样都是main函数作为入口,所以我们这里定义了我们应用的入口。
5. Router注册路白,路由就是告诉 borgo,当用户来请求的时候,该如何去调用相应的 Controllor,这里我们注册了请求
的时候,清求到 MainController.这里我们需要知道, Router函数的两个参数函数,第一个是路径,筒二个是 Controller
的指针。
6.Run应用,最后一步就是把在步骤1中初始化的 BeeApp开启起来,其实就是内部监听了8080端∏:Go默认情况会監听你本
机所有的P上面的8080端口
停止服务的话,请按cm+c。
下面为 windows下的快捷操作批处理文件
在% GOPATH9%sc目录下分别创建文件 step1. install-bee bat和step2new- -beego-app bat
step1.install-beebat文件内容
I set GOPATH=%-dpo
I go build github. com\beegolhee
3. copy bee. exe %GOPATH%\bin\bee.exe
el bee
I pause
step2 new-beego-app bat文件内容
1@eco设置App的值为您的应用文件夹名称
2.setApp=CoscmS.com
I set GOPATH=%-dpo
set BEE=GOPATH%lbinlbee
BBEE%o new %/APP%/
6.cd APP%
8. echo pause >>run.bat
). start run. bat
pause
11.starthttp:/127.0.0.1:8080
依次点击上面创建的两个文件即可快速开启 brego之旅。
以后只需要到您的应用日录下点击 un. bat即可。
集成第三方应用
集成第三方应用
beeo持第三方应用的集成,用户可以自定义http.handlEr,用户可以通过如下方式进行注册路由
1.beego.RouterHandler("/chat/: info( *), sockjshandler
sock jshandler实现了接冂htp. Handler
目前在 bee go的 example中有支持 sock js的chat例了,示例代码如下
cage main
I import(
github. com/astaxie/beego
github. com/izzy/sockjs-go/socks
7
strings
8
9
10. var users *socks. SessionPool socks. NewSessionPool0
12.func chatHandler(s socks. Session)i
users Add(s)
defer users. Remove(s)
m: =sReceive
18.
if m = nil i
19
break
fullAddr: =S Intoo Remote Addr
addr: = fullAddr[: strings. LastIndex(fullAddr,". )I
iti("os: %s", addr, m)
users. Broadcast(m)
28.type Main Controller struct
beego Controller
31
32.func(m *Main Controller)GetO f
m. TplNarme ="index. html
36. func mainO t
37. conf: =socks. NewConfigO
38. sockjshandler socks. NewHandler("chat", chatHandler, conf)
beego. Router ("/", &M
ego Router Handler ("chat/: info(.*), sockjshandler
meego. Runo
通过上面的代码很简单的实现了一个多人的聊天室。上面这个只是一个 socks的例子,我思通过大家自定义h. Handler,可
以有很多种方式来进行扩展bego应用
线程安全的Map
线程安全的Map
我们知道在Go语言里面map是非线程安全的,详细的 a tomIc maps。但是我们在平常的业务中经常需要用到线程安全的map,特
别是在 goroutIne的情况卜,所以 meego内置∫一个简单的线程安全的map
New BeeMapO
2. if!bm. Set('astaxie", 1)i
3
t Error(set Error
4
5. if Ibm. Check("astaxie')[
6. t Error(check err)
9. if v: =bm Get(astaxie"): v (int)!=1(
t Error (get err)
13.bm.Delete(astaxie'")
14. if bm Check("astaxie")
15
t Error(delete err)
16
上面演示了如何使用线程安全的Map,主要的接口有
Get(k interface) interfacc
Set(k interface, v interface) boo
Check(k interface)bool
捐赠我们
捐赠我们
meego应用框架一直致力于为大家提供一个快速开发应用的途径,同时推广发展国内的Go发展,您的
帮助是对我们最大的鼓励和支持!
我们团队这一年多来一直在坚持不懈的努力改进,并会一直坚持开源免费为大家提供最好的Go框架而
努力,会持续不断的增加新功能,提供用户在开发中遇到的各类解决方案,如果您觉得我们的成果对你
有帮助,那么我们乐意接收来自各路豪杰的捐助
支付宝扫描捐赠:
Paypal捐赠
support beego
Option 1 S30.00 USD
Donate
【画
您的捐赠将被用于:
持续和深入的开发
维护社区的运行稳定
租用更好的带宽
奖励团队的杰出页献者
社区活动或讲座
捐赠列表(按照捐赠时间倒序)
捐贈时间
捐赠
额「附言
01401.1523:17郭帅¥100.00beo0强人,希望能越做越好!
201.01.11:28李文¥888砖头,矿渣
.1113:23李文施¥88砖头,矿渣。
.0920:50徐缓
0.00从你们的书和项目中受益匪浅,穷学生一个,微薄之力仅仅表感谢
.0210:50覃礼钧¥50.00我正在用Bego开发个人自媒休网站
2013.12.2801:15孙去建*30.00攴持国人对开源的贡献
2013.12.2317:14李喜
¥38.00支持川源
2013.12.2317:12蒋惟堃¥30.00支持 meego
2013.12.2317:10陈明达¥88希望beeo越来越棒
013.12.2111:30黄诤¥888BEG法宏图大业
2013.12.2012:01杨恒¥999开源受益者,贡献份力量
2013,:55光义¥100.00 brego很好,向你学习
.1821:12黄甜¥20.00感课你的框架
013.12.1219:47周思达¥19.80[你懂的
2013.12.1218:04董建农¥10.00必须支持
13.12.1216:20俞翔¥18.88be
013.12.1216:11孙彦欣¥50.00雪虎
2013.12.1216:10邵天宇¥8.8好吧,再来一个!:我要比方总多!
2013.12.1216:05邵天宇¥18.81买杯咖啡犒劳下吧
2013.12.1216:04付光荣¥10.00支持beeo
.1215:51常焱
58 58 to beco
2013.12.1215:44谢做民¥28.00
2013.12.1215:42钱文君¥10.00丝一枚,暂时捐的寒碜
2013.12.1215:37李文涛¥10000加油!Bego!
13.12.1215:31周明岐¥10.0为了加vip群
013.12.0900:28董泽润¥20
谢大加油 go in action
2013.12.0616:43廖君
3.00谢谢您的gowe编程
.0121:14李保银¥20.00支持6实战开发,不成敬意
2013.1.211:16周维¥20.00支持谢大
2013.11.1217:56熊书宜
¥9.99 hello,bego!
2013.11.1020:21曾锦和¥10.00还没赚到钱,聊表心意
2013.11.0821:10余征
¥10.00准备使用bego了,希望它能如愿,支持谢人
013.11.0613:42童中波
¥5.00 come bah
捐赠时间
捐赠人
金额附言
型个
2013.10.3109:49汪大平¥10.00能不能加入你们开发组啊
2013.10.2721:30李代红¥9.90支持beo
013.10.1809:55保忠¥18.00严重文持谢老大
2013.10.0321:20李文旌¥8.8砖T:学生狗,钱不多,支持卜bego,支持卜谢大
2013.09.3014:59高步双
110必须支持谢大!!
20109.刘冬瑞¥0.000加油
2013.09.301:54方圆¥100.00谢总管好
2013.09.301:38张首华¥10.00支持
2013.09.3010:22张德福¥20.00郑州一救赎一迟镇凯
2013.09.2417:52赵海斌¥10.00支持谢大
2013.09.2415:30刘孝园¥10.00谢谢谢大大的努力
2013.09.2415:29薛以祥
支持谢大。
2013.09.2415:25张晔
¥8.88be1 lo world
2013.09.2415:15傅冬¥20.33傳小黑,捐赠
2013.09.2415:10林建造¥10.50 golan导师
2013.09.2415:06肖建亮¥6.6六六大顺吧
2013.09.2415:02高栋
hello world beego
2013.09.2415:01方云麟¥10.00不许踢我
【实例截图】
【核心代码】

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/128193.html