首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Golang语言系列-15-数据库
】的更多相关文章
Golang语言系列-15-数据库
数据库 MySQL 连接数据库 package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" //这里只要导入即可,使用的是这个包的 init() 函数 ) /* [Go语言操作MySQL] Go语言中内置的database/sql包提供了保证SQL或类SQL数据库的泛用接口,并不提供具体的数据库驱动. 使用database/sql包时必须注入(至少)一…
Golang语言系列-10-包
包 自定义包 package _0calc import ( "fmt" ) /* [Go语言的包] 在工程化的Go语言开发项目中,Go语言的源码复用是建立在包(package)基础之上的 本文介绍了Go语言中如何定义包.如何导出包的内容及如何导入其他包 [包介绍] 包(package)是多个Go源码的集合,是一种高级的代码复用方案,Go语言为我们提供了很多内置包 如fmt.os.io等 [定义包] 我们还可以根据自己的需要创建自己的包,一个包可以简单理解为一个存放 .go 文件的文件…
Golang语言系列-11-goroutine并发
goroutine 并发 概念 package main import ( "fmt" "time" ) /* [Go语言中的并发编程 goroutine] [并发与并行] 并发:同一 时间段 内执行多个任务(你在用微信和两个女朋友聊天) 并行:同一 时刻 执行多个任务(你和你朋友都在用微信和女朋友聊天) [goroutine] Go语言的并发通过goroutine实现,goroutine类似于线程,属于用户态的线程,比内核态线程更轻量级,是由Go语言的运行时(ru…
Golang语言系列-08-结构体
结构体 自定义类型和类型别名的区别 package main import "fmt" // 自定义类型和类型别名的区别 // type后面跟的是类型 type myInt int //自定义类型 type youInt = int //类型别名 func main() { // 自定义类型 var n myInt n = 100 fmt.Println(n) //100 fmt.Printf("%T %d\n", n, n) //main.myInt 100 //…
Golang语言系列-07-函数
函数 函数的基本概念 package main import ( "fmt" ) // 函数 // 函数存在的意义:函数能够让代码结构更加清晰,更简洁,能够让代码复用 // 函数是一段代码的封装 // 把一段逻辑抽象出来封装到一个函数中,给他起个名字,每次用它的时候直接用函数名调用即可 // 函数的基本定义 // func 函数名称(参数变量名称1 参数类型, 参数变量名称2 参数类型, ...) (返回值变量名称1 返回值类型, 返回值变量名称2 返回值类型, ...) func s…
Golang语言系列-05-数组和切片
数组和切片 数组 概念 数组是同一种数据类型元素的集合:数组的长度必须是常量,并且长度是数组类型的一部分,一旦定义,长度不能变 例如:[5]int 和 [10]int 是不同的数组类型 使用时可以修改数组成员,但是数组大小长度不可变化 数组的初始化 package main import ( "fmt" ) func main() { var a1 [3]bool var a2 [4]bool var a122 [3]func() fmt.Printf("a1:%T a2:%…
Golang语言系列-01-Go语言简介和变量
Go语言简介 Go(又称Golang)是Google开发的一种静态强类型.编译型.并发型,并具有垃圾回收功能的编程语言. 罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pike)及肯·汤普逊(Ken Thompson)于2007年9月开始设计Go,稍后Ian Lance Taylor.Russ Cox加入项目. Go是基于Inferno操作系统所开发的.Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了…
Golang语言系列-17-Gin框架
Gin框架 Gin框架简介 package main import ( "github.com/gin-gonic/gin" "io" "net/http" "os" ) // gin框架安装: go get -u github.com/gin-gonic/gin // Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点 // 对于golang而言,web框架的依赖要远比…
Golang语言系列-16-context上下文
context上下文 控制子goroutine退出 全局变量方式 package main import ( "fmt" "sync" "time" ) // 如何优雅的控制子goroutine退出? // 全局变量方式 // 存在的问题: // 1.使用全局变量在跨包调用时不容易统一 // 2.如果f中再启动goroutine,就不太好控制了 var wg sync.WaitGroup var notify bool // 标志位,控制子gor…
Golang语言系列-14-单元测试
单元测试 字符串切割函数 package split_string import ( "fmt" "strings" ) // Split:切割字符串 // example: // abc, b --> [a c] func Split(str string, sep string) []string { // 优化代码,初始化的时候指定长度和容量,避免在append的时候去动态扩容,影响性能 var ret = make([]string, 0, strin…