WeMVC Go MVC框架

我要开发同款
匿名用户2016年07月28日
49阅读

技术信息

授权协议
Apache

作品详情

WeMVC是一个用go语言开发的简单的高性能MVC框架。它有以下特色:

全新的路由算法,性能超棒。支持路由变量自定义验证(routeparametervalidatio),支持默值设置。示例:wemvc.Route("/blog/<year:it(4)>-<moth:it(1~2)>-<day:it(1~2)>/<title>",blogCotroller{})wemvc.Route("/test/<compay>/<uid:it>/<departmet=admi>/<title=maager>",TestCotroller{},"Route_Data").特有的Actio处理方式:Actio方法名的处理采用[HttpMethod]+[ActioName]方式。例如程序中有个路由规则wemvc.Route("/user/<actio>",User{})。当以GET方式访问https://localhost:8080/user/logi时,路由器捕捉到HttpMethod是Get,Actio是logi,所以执行的方法是GetLogi()。而当POST提交表单时,路由器捕捉到HttpMethod是Post,Actio是logi,然后执行方法PostLogi()。如果无法找到GetLogi或PostLogi,则执行方法Logi();View借鉴beego框架处理方式,将View编译缓存到内存,实时监控view文件的变化,提高View渲染性能;友好的WebAPI处理,支持多种输出格式JSON,XML,JSONP等支持Sessio支持Filter支持Cache支持Area支持自定义错误(如404)处理自动监视文件改动,当配置文件改动之后自动加载到服务器中

示例:

packagemaiimport"github.com/Simbory/wemvc"typeHomeCotrollerstruct{wemvc.Cotroller}fuc(thisHomeCotroller)Idex()wemvc.ActioResult{returthis.Cotet("helloworld!<br/><ahref=\"/about\">About</a>","text/html")}fuc(thisHomeCotroller)GetAbout()wemvc.ActioResult{obj:=make(map[strig]iterface{})obj["routeData"]=this.RouteDataobj["headers"]=this.Request.Headerreturthis.Jso(obj)}fuciit(){wemvc.Route("/",HomeCotroller{})wemvc.Route("/<actio>",HomeCotroller{})}fucmai(){wemvc.Ru(8080);}

另一个更加完整的的示例:

https://github.com/Simbory/wemvc-sample

 

功能介绍

WeMVC是一个用go语言开发的简单的高性能MVC框架。它有以下特色: 全新的路由算法,性能超棒。支持路由变量自定义验证(route parameter validation),支持默值设置。示...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论