GO学习之路
Cheng_Han
all is ok
展开
-
GO—常用函数
1,正则表达式引用:impot:regexpmatch,_:=regex.MatchString("正则表达式",“要匹配的字符串")(是否匹配,错误)注册正则:r :=regexp.Complie("正则表达式")r.MatchString("串") 返回是否匹配func reg() { match, _ := regexp.MatchString("chenghan",原创 2015-07-25 14:34:41 · 475 阅读 · 0 评论 -
golang-beego的使用
beego 的安装是典型的 Go 安装包的形式:go get github.com/astaxie/beego常见问题:git 没有安装,请自行安装不同平台的 git,如何安装请自行搜索。git https 无法获取,请配置本地的 git,关闭 https 验证:git config --global http.sslVerify false无法上网怎么安装转载 2015-09-06 20:37:25 · 1126 阅读 · 0 评论 -
golang-otto JS解释器
otto是一个Go语言实现的JavaScript 解释器 otto是一个Go语言实现的JavaScript的语法分析器和解释器123import( "github.com/robertkrimen/otto")在虚拟机中运行一些代码转载 2015-09-06 21:23:44 · 6863 阅读 · 0 评论 -
golang-发送邮件
亲测可用package mainimport ( m "chUtils/mail" "fmt")func main() { email := m.NewEmail("305860361@qq.com", "测试主题", "测试了") err := m.SendEmail(email) if err != nil { fmt.Print(err) }}p转载 2015-08-20 20:58:42 · 841 阅读 · 0 评论 -
golang-代码规范
十条有用的 Go 技术这里是我过去几年中编写的大量 Go 代码的经验总结而来的自己的最佳实践。我相信它们具有弹性的。这里的弹性是指:某个应用需要适配一个灵活的环境。你不希望每过 3 到 4 个月就不得不将它们全部重构一遍。添加新的特性应当很容易。许多人参与开发该应用,它应当可以被理解,且维护简单。许多人使用该应用,bug 应该容易被发现并且可以快速的修复。我用了很长的时间学到了这些事情转载 2015-09-06 11:17:59 · 1903 阅读 · 0 评论 -
golang-反射机制
1,写数据库dao层的时候用到了反射机制。在反射的时候要注意你的对象时指针还是结构体这样区别也很大。以下接受几种常用的放射方法reflect.type ofpackage mainimport ( "fmt" "reflect")type hehe struct { NameFile string "PrimaryKey" age int}func mai原创 2015-09-06 10:39:32 · 726 阅读 · 0 评论 -
go-反射机制
思路 结构对象映射出来:类名,成员名,成员值package daoimport ( _ "ChbeeGoTest/models" "ChbeeGoTest/utils/myLog" "fmt" "reflect" "strings")type Dao struct {}var DaoInter原创 2015-09-02 17:23:29 · 671 阅读 · 0 评论 -
GO-回调函数
1,什么是回调函数。一个函数中有个参数为函数的指针。该函数自己调用自己指针函数即可;2,为什么要使用回调函数。抽象画了一个函数,简洁代码。异步执行3,例子:// HuiDiaoFunc project main.gopackage mainimport ( "fmt")//函数 里面有个两个参数的回调函数func print(call func(a int, b in原创 2015-07-24 11:02:49 · 3274 阅读 · 0 评论 -
GO-数据类型protobuf-go-mysql
Protobuf字节Go位范围Mysql布尔类型bool1Bool8True falsetinyInt双精度浮点doubleNFloat6464-1.79769E308原创 2015-08-04 19:38:09 · 2599 阅读 · 0 评论 -
Go-基础学习总结
1,背景:GO是强类型语言,其产生的原因是因为开发者认为C#,JAVA,C++太过繁重。而C也太过老旧,开发者想模仿C开发出一种接近底层的第三代语言。在当时多核时代盛行的背景下GO顺应潮流,坚持着简单的原则创造了GO2,基础语法:基本数据类型:int16 int32 int64 float32 float64 sring complex 3,定义数据定义:int原创 2015-07-22 09:09:52 · 611 阅读 · 0 评论 -
Go-数据库连接
GO src中自带了sql包和连接数据库的包。这里以连接MYsql为例子。sql.Open 就是开启了一个数据库连接处。在执行EXEC 或者 QUERY的时候就会自己去建立连接。因此整个应用程序 只需要初始化一次sql.db指针。然后到处用就oK了。// dbTest project main.gopackage mainimport ( "database/sql" "fmt"转载 2015-07-30 14:17:25 · 2141 阅读 · 0 评论 -
Go-unsafe详解
package unsafe// ArbitraryType is here for the purposes of documentation only and is not actually// part of the unsafe package. It represents the type of an arbitrary Go expression.type Arbitrary原创 2015-08-11 17:24:01 · 2762 阅读 · 0 评论 -
Go-下载网上图片
package mainimport ( "bytes" "fmt" "io" "io/ioutil" "net/http" "os" "regexp")func main() { imagPath := "http://img2.bdstatic.com/img/image/166314e251f翻译 2015-08-10 11:51:31 · 1530 阅读 · 0 评论 -
判断两三角形是否相交
1,原理:在上篇文章中我们可以判断点是否在三角形内。这张判断两三角形是否相交,只需要判断三角形A的三个顶点不在三角形B内,三角形B的三个顶点不在三角形A则满足两三角形相离代码如下:// test project main.gopackage mainimport ( "fmt")//坐标type victor struct { X float32 Y float32}原创 2015-07-27 11:01:35 · 4912 阅读 · 5 评论 -
验证点是否在三角形内
1,原理:三角形有三个点p1,p2,p3。当p1,p2连成直线后,如果测试点和p3在直线的一侧。这为true。用排列组合同时满足p1,p2;p2,p3;p1,p2三条直线同侧则必定在三角形内。事例代码如下:// test project main.gopackage mainimport ( "fmt")//坐标type victor struct { X float32原创 2015-07-27 10:33:07 · 397 阅读 · 0 评论 -
GO-读取网页内容(获取外网IP地址)
func main() { resp, _ := http.Get("http://www.baidu.com") defer resp.Body.Close() io.Copy(os.Stdout, resp.Body) addr, _ := net.InterfaceAddrs() fmt.Printf("内网:%s", addr)}原创 2015-07-25 17:09:50 · 1432 阅读 · 0 评论 -
golang-数据库详解
基本概念Open() – creates a DBClose() - closes the DBQuery() - 查询QueryRow() -查询行Exec() -执行操作,update,insert,deleteRow - A row is not a hash map, but an abstraction of a cursorNext()Scan()转载 2015-09-06 16:49:59 · 960 阅读 · 0 评论