代码改变世界

阅读排行榜

一步一步学习Revel Web开源框架

2013-01-17 15:24 by Danny.tian, 20501 阅读, 收藏,
摘要: 是一个高效的Go语言Web开发框架, 模仿Play! Framework而来, 我个人认为Revel是目前Go语言中比较不错的一个Web开发框架, 虽然它还有很多待完善的地方但还是很值得学习和借鉴滴, 我在这里记录一下偶的对它滴研究过程,以作备忘,也希望能和喜欢它的朋友们一起交流学习.Go Web开发之Revel - 开发入门Getting Started创建你的第一个App网页请求处理流程Hello WorldGo Web开发之Revel - 开发手册介绍概念组织结构Revel运行原理概述路由参数绑定验证Session/Flash返回值模板拦截器插件模块Websockets测试日志部署app 阅读全文

Go开源项目 - gorp使用方法

2013-01-17 10:25 by Danny.tian, 13399 阅读, 收藏,
摘要: gorp是一个Go开源ORM框架.Go关系型数据库持久化我很含糊的称gorp是一个ORM框架. Go还没有真正的对象, 至少没有一个经典的感觉和Smalltalk/Java一样的,这是"O". gorp不知道任何你struct之间的关系(以后会实现,现在还在TODO list中). 所以"R"也是有质疑的(但是我使用这个名字,因为感觉上更贴切)."M"是没有问题的. 给定一些Go结构和一个数据库, gorp应该可以减少你的重复代码.我希望gorp能节省你的时间并简化从数据库获取数据的苦活来帮助你把精力投入到算法上而不是基础设施上面.数 阅读全文

Http协议中的各种长度限制总结

2013-04-16 11:49 by Danny.tian, 12164 阅读, 收藏,
摘要: 1. URL长度限制在Http1.1协议中并没有提出针对URL的长度进行限制,RFC协议里面是这样描述的,HTTP协议并不对URI的长度做任何的限制,服务器端必须能够处理任何它们所提供服务多能接受的URI,并且能够处理无限长度的URI,如果服务器不能处理过长的URI,那么应该返回414状态码。虽然Http协议规定了,但是Web服务器和浏览器对URI都有自己的长度限制。服务器的限制:我接触的最多的服务器类型就是Nginx和Tomcat,对于url的长度限制,它们都是通过控制http请求头的长度来进行限制的,nginx的配置参数为large_client_header_buffers,tomcat 阅读全文

Go Web开发之Revel - Getting Started

2012-12-28 11:18 by Danny.tian, 7090 阅读, 收藏,
摘要: 今天开始对revel框架做一些开发和总结,首先从官方的Getting Started开始1. 安装Go开发环境,还不会的可以参考搭建Go语言开发环境-基础篇及搭建Go语言开发环境-优化篇2.建立GOPATH目录并下载revel源代码mkdir ~/gocodecd $GOPATHgo get github.com/robfig/revel3.编译revel命令行工具,revel自己封装了go的命令行工具,创建revel项目、打包发布基本都用这个工具,执行下面的命令go build -o bin/revel github.com/robfig/revel/cmd4.可以将编译出来的revel命令 阅读全文

Revel示例 - 聊天室

2013-01-23 17:24 by Danny.tian, 6136 阅读, 收藏,
摘要: 聊天室聊天室应用程序示例如下:使用channel来实现一个聊天室(pub-sub模式),俗称的发布-订阅模式使用Comet和Websockets应用程序的文件结构如下:chat/app/ chatroom # Chat room routines chatroom.go controllers app.go # The welcome screen, allowing user to pick a technology refresh.go # Handlers for the "Active R... 阅读全文

GDB 调试Golang常用命令及方法(备忘)

2013-01-11 11:51 by Danny.tian, 5927 阅读, 收藏,
摘要: gdb [options] --args executable-file [inferior-arguments ...]l - 相当于list命令,l 37显示37行附近的源码b 行号,b 37 if i==3b 函数名.函数名i b - 查看全部断点信息d - 删除所有断点d 0 - 删除第0个断点display a - 一直显示a的值undisplay - 去掉所有显示watch addr - 监控addr内存s - step的意思进入函数进行跟踪j 37 - 直接跳到37行运行u - 将循环执行完p a - 打印a的值p a=3 - 设置a的值,p (*(mystruct *)addr 阅读全文

Go Web开发之Revel - 网页请求处理流程

2012-12-28 12:59 by Danny.tian, 4858 阅读, 收藏,
摘要: 我们之前已经已经创建了myapp的应用,现在我们来看看revel是如何处理一个浏览器访问http://localhost:9000的请求的。Routes(路由)首先revel会检查conf/routes文件,这个文件包含一个路由,如下:GET / Application.Index这个路由信息告诉revel当访问 / 路径是应该调用Application Controller的Index方法Actions(行为)下面我们我们来看一下Controll中的Action,所在路径为app/controllers/ap... 阅读全文

Go Web开发之Revel - 创建你的第一个App

2012-12-28 11:35 by Danny.tian, 4721 阅读, 收藏,
摘要: 使用下面的revel命令行工具在你的GOPATH中创建一个空的项目并运行打开你的浏览器访问http://localhost:9000,出现下图表示程序可以正常工作了至此结束。 阅读全文

搭建Go语言开发环境-基础篇

2012-12-08 10:54 by Danny.tian, 4607 阅读, 收藏,
摘要: 1. 安装Go环境(源码安装)配置环境变量打开~/.bashrc,添加如下变量export GOROOT=$HOME/goexport GOBIN=$GOROOT/binexport GOARCH=amd64export GOOS=linuxexport PATH=$GOBIN:$PATHexport GOPATH=$HOME/goprograms运行source ~/.bashrc安装Go工具链sudo apt-get install bison ed gawk gcc libc6-dev make git安装Mercurialsudo apt-get install mercurial下载 阅读全文

Go开源项目 - goconfig 使用方法

2013-01-11 10:24 by Danny.tian, 4527 阅读, 收藏,
摘要: goconfig是Revel用到的一个开源工具, 它实现了一个基础的配置文件解析器语言, 它的结构类似于微软的Windows INI文件.配置文件由几部分组成, 由"[section]"做头部紧接着"name:value"键值对, 也可以用"name=value". 注意空格将被从values中删除. 在相同的section可选的value能包含涉及其他values格式化字符串, 或values在一个特殊的DEFAULT部分. 另外defaults可以在初始化和检索时被提供. 注释字符时";" 或 "#& 阅读全文
1 2 3 4 5 ··· 7 下一页