-
Go实战--golang中使用MongoDB(mgo)
所属栏目:[大数据] 日期:2020-12-16 热度:156
生命不止,继续 go go go !!! 昨天分享了golang如何操作redis数据库,那今天就介绍一下golang中如何使用mongodb数据库。 何为MongoDB? 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可[详细]
-
Golang教程目录
所属栏目:[大数据] 日期:2020-12-16 热度:104
原文:https://golangbot.com/learn-golang-series/ 介绍 1 - 介绍和安装 2 - Hello World 变量、类型和常量 3 - 变量 4 - 类型 5 - 常量 函数和包 6 - 函数 7 - 包 条件和循环语句 8 - if else 语句 9 - 循环语句 10 - switch语句 数组、切片和变参函数 11[详细]
-
Golang教程:(一)介绍和安装
所属栏目:[大数据] 日期:2020-12-16 热度:195
原文:https://golangbot.com/golang-tutorial-part-1-introduction-and-installation/ 这是本Golang系列教程的第一篇。 什么是Golang Golang 又称为 Go,是由 Google 开发的一种开源的、编译型的、静态类型的编程语言。 Golang 的主要目的是使开发高可用性[详细]
-
Golang教程:(二)Hello World
所属栏目:[大数据] 日期:2020-12-16 热度:151
原文:https://golangbot.com/hello-world/ 这是本Golang系列教程的第二篇。请阅读 Golang教程:(一)介绍和安装 来了解什么是Golang以及如何安装它。 除了亲自写代码以外没有更好的方式来学习一门新的编程语言。在这篇教程中我们将开始编写我们的第一个程[详细]
-
Golang教程:(三)变量
所属栏目:[大数据] 日期:2020-12-16 热度:95
原文:https://golangbot.com/variables/ 这是本Golang系列教程的第三篇。本篇介绍Golang中的变量。 你可以阅读 Golang教程:(二)Hello World 来学习如何建立 Go 工作空间以及编写和运行 hello world 程序。 什么是变量 变量(Variable)是给某个内存地址[详细]
-
Golang教程:(四)类型
所属栏目:[大数据] 日期:2020-12-16 热度:108
原文:https://golangbot.com/types/ 这是本Golang系列教程的第四篇。 你可以阅读 Golang教程:(三)变量 来学习有关变量的知识。 下面是 Go 支持的基本类型: bool Numeric Types int8,int16,int32,int64,int uint8,uint16,uin32,uint64,uint float32,floa[详细]
-
我学xingo golang服务器之-xingo_demo server.go start
所属栏目:[大数据] 日期:2020-12-16 热度:106
启动服务器: go run server.go 我学xingo golang服务器之-xingo_demo server.go start 上三节分别讲解学习了,xingo服务器和客户端的协议处理,包括协议的生成,协议的解析和发送,最后又学习了xingo_demo_unity3d部分的同屏玩家的AI逻辑处理过程; (例子[详细]
-
Go实战--golang中各种排序算法实现以及生成随机数
所属栏目:[大数据] 日期:2020-12-16 热度:150
生命不止,继续 go go go !!! 排序,对于每种编程语言都是要面对的。这里跟大家一起分享golang实现一些排序算法,并且说明如何生成随机数。 当然,golang为我们提供了sort包,也提供了math/rand包,这就大大方便了我们。 还要说明一下,这里不会详细介绍各种[详细]
-
golang 生成伪随机数
所属栏目:[大数据] 日期:2020-12-16 热度:98
func GenerateUnique() string { var r = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0") uniq := make([]rune,20) for i := range uniq { rand.Seed(time.Now().UTC().UnixNano() + int64(i20)) uniq[i] = r[rand.Intn(len(r))] } retur[详细]
-
Golang教程:(五)常量
所属栏目:[大数据] 日期:2020-12-16 热度:55
原文:https://golangbot.com/constants/ 这是本Golang系列教程的第五篇。 定义常量 常量(constant)表示固定的值,比如: 5 , -89 , "I love Go" , 67.89 等等。 考虑如下程序: var a int = 50 var b string = "I love Go" 上面的程序中, a 和 b 分别[详细]
-
Golang教程:(六)函数
所属栏目:[大数据] 日期:2020-12-16 热度:191
原文:https://golangbot.com/functions/ 这是本Golang系列教程的第六篇。 函数是完成一个特定任务的代码块。一个函数接受输入,对输入进行一些运算并产生输出。 函数声明 在 Go 中声明一个函数的语法为: func functionname(parametername type ) returntyp[详细]
-
Golang教程:(七)包
所属栏目:[大数据] 日期:2020-12-16 热度:170
原文:https://golangbot.com/packages/ 这是本Golang系列教程的第七篇。 什么是包?为什么使用包? 到目前为止我们见到的 Go 程序都只有一个文件,文件中包含了一个main函数和几个其他函数。在实际中这种将所有代码都放在一个文件里的组织方式是不可行的。[详细]
-
Golang教程:(八)if else 语句
所属栏目:[大数据] 日期:2020-12-16 热度:93
原文:https://golangbot.com/if-statement/ 这是本Golang系列教程的第八篇。 if 是一个条件语句。if 语句的语法为: if condition { } 如果 condition 为 true ,那么就执行 { 和 } 之间的代码。 与其它语言(如C)不同,即使 {} 之间只有一条语句, {} 也[详细]
-
Golang教程:(九)循环语句
所属栏目:[大数据] 日期:2020-12-16 热度:137
原文:https://golangbot.com/loops/ 这是本Golang系列教程的第九篇。 循环语句用于重复执行一段代码。 for 语句是 Go 中唯一的循环语句。Go 没有提供其他语言(如 C)中的 while 和 do while 语句。 for 语句语法 for 语句的语法如下: for initialisation;[详细]
-
golang结构体json的时间格式化解决方案
所属栏目:[大数据] 日期:2020-12-16 热度:172
最近开发项目时候发现一个结构体的Json转换的时间格式问题。 即这种1993-01-01T20:08:23.000000028+08:00 这种表示UTC方法。从我们习惯来说,更喜欢希望的是 1993-01-01 20:08:23这种格式。 重新复现代码如下: packagemainimport("time""encoding/json")typ[详细]
-
go的异常处理机制
所属栏目:[大数据] 日期:2020-12-16 热度:177
在java或php等很多面向对象的语言中,异常处理是依靠throw、catch来进行的。在go语言中,panic和recover函数在作用层面分别对等throw和catch语句,当然也存在不同之处。 从设计层面来看,panic和recover函数适用于那些真正的异常(例如整数除0),而throw cat[详细]
-
golang web 封装之路由
所属栏目:[大数据] 日期:2020-12-16 热度:91
概述 一般的 web项目,主要两点:路由 和 数据库。围绕这两点之外就是业务逻辑。下面以几个例子简单谈谈 web项目的封装逻辑。 封装方式一、路由写在 main函数中,数据库初始连接放在 init() 函数中。地址 func init() {db.Connect()}func main() {// Configu[详细]
-
Golang教程:(十)switch 语句
所属栏目:[大数据] 日期:2020-12-16 热度:173
原文:https://golangbot.com/switch/ 这是本Golang系列教程的第十篇。 switch 是一个条件语句,用于将一个表达式的求值结果与可能的值的列表进行匹配,并根据匹配结果执行相应的代码。可以认为 switch 语句是编写多个 if-else 子句的替代方式。 举例是说明[详细]
-
Golang教程:(十一)数组和切片
所属栏目:[大数据] 日期:2020-12-16 热度:56
原文:https://golangbot.com/arrays-and-slices/ 这是本Golang系列教程的第十一篇。 数组 数组是类型相同的元素的集合。例如,整数 5,8,9,79,76 的集合就构成了一个数组。Go不允许在数组中混合使用不同类型的元素(比如整数和字符串)。 声明 数组的类型为[详细]
-
Golang教程:(十二)变参函数
所属栏目:[大数据] 日期:2020-12-16 热度:149
原文:https://golangbot.com/variadic-functions/ 这是本Golang系列教程的第十二篇。 什么是变参函数? 变参函数是指可以接受可变数量的参数的函数。 语法 如果一个函数的最后一个参数由 ...T 表示,则表示该函数可以接受任意数量的类型为 T 的参数。 请注[详细]
-
Golang教程:(十三)Map
所属栏目:[大数据] 日期:2020-12-16 热度:58
原文:https://golangbot.com/maps/ 这是本Golang系列教程的第十三篇。 什么是 map? Map 是 Go 中的内置类型,它将键与值绑定到一起。可以通过键获取相应的值。 如何创建 map? 可以通过将键和值的类型传递给内置函数 make 来创建一个 map。语法为: make(m[详细]
-
Golang教程:(十四)字符串
所属栏目:[大数据] 日期:2020-12-16 热度:164
原文:https://golangbot.com/strings/ 这是本Golang系列教程的第十四篇。 string 类型单独提取为一篇教程是因为在 Go 中,string 的实现方式同其他语言的不同。 什么是字符串 在 Go 中字符串是 byte 数组。可以通过将内容放在双引号 "" 之间的方式来创建一[详细]
-
Golang plugin 插件例子
所属栏目:[大数据] 日期:2020-12-16 热度:116
好像手上有场景可以用Go1.8的插件来弄,写了个例子. plug3/plug3.go: package main/*封装Key到.soAuthor: XCLDate: 2017-7-16*/type ApiKey struct {key string}var myApiKey ApiKeyfunc init() {myApiKey = ApiKey{key: "xcl"}}func main() {}// so导出的函[详细]
-
深入理解Go Channel
所属栏目:[大数据] 日期:2020-12-16 热度:133
Golang使用Groutine和channels实现了CSP(Communicating Sequential Processes)模型,channles在goroutine的通信和同步中承担着重要的角色。在GopherCon 2017中,Golang专家Kavya深入介绍了 Go Channels 的内部机制,以及运行时调度器和内存管理系统是如何支[详细]
-
golang web 封装之 handles
所属栏目:[大数据] 日期:2020-12-16 热度:53
封装方式一、将 model 和 handle 以及中间层放在不同的包中 main router.GET("/new",articles.New)router.GET("/articles/:_id",articles.Edit) handle func New(c *gin.Context) {article := models.Article{}c.HTML(http.StatusOK,"articles/form",gin.H{"[详细]
