使用 gomail 先下载gomail 包 go get gopkg.in/gomail.v2 代码: package main import ( "fmt" "gopkg.in/gomail.v2" "log" "strconv" ) const ( ...
go
Gin JSON渲染,获取参数,参数绑定大全
获取Query参数 Query参数又叫Querystring参数,是URL的?后面的一串字符串。 demo代码如下: r.GET("/home", func(c *gin.Context) { username := c.Query("username") password := c.DefaultQuery("...
Golang 使用定时任务(robfig/cron)
前两天优化一个从三方查询数据很耗时的接口,改造的方案是每半小时同步一次数据缓存到内存,Golang 下最常用的是 robfig/cron 包,使用简便,功能强大,本文对其使用做了整理记录。 英文官方文档参考:https:/...
golang 优雅关闭服务
一、什么是优雅关闭服务 先把在执行的任务执行完成,再关闭服务,防止中断服务造成程序错误,数据异常等影响。 二、使用函数 语法: func (srv *Server) Shutdown(ctx context.Context) error ...
golang url结构解析
简介: golang 中通过net/url包中的Parse方法对指定的url结构进行解析,分别获取响应的元素 1、url结构 Scheme://host.domain:port/path/to/resource?query_string#fragment 介绍: scheme 表示协议,ho...
Go锁的实现原理sync-mutex篇
在Go中,主要实现了两种锁:sync.Mutex(互斥锁) 以及 sync.RWMutex(读写锁)。 本篇主要给大家介绍sync.Mutex的使用和实现原理。 文章目录 为什么需要锁 在Go中对于并发程序进行公共资源的访问的限制最常用...
golang标准库之path/filepath
package main import ( "fmt" "os" "path/filepath" ) func WalkFunc(path string, info os.FileInfo, err error) error { fmt.Println("File:", path, "IsDir:", info.IsDir(), "s...
golang标准库之strconv
字符串转整型 package main import ( "fmt" "strconv" ) func main() { //字符串转为整数 s := "128" // func ParseInt(s string, base int, bitSize int) (i int64, err err...
golang标准库之sort
简介 标准库sort实现了4种排序方法,插入排序、堆排序、快排和归并排序,但是并没有暴露给用户接口。sort包会根据数据选择最优的排序方法(其实只使用了3种,归并排序除外)。 接口 用户需要实现以下接口才能...
golang标准库之net/url包
完整的URL格式为: [scheme:][//[userinfo@]host][/]path[?query][#fragment] URL package main import ( "fmt" "net/url" ) func main() { urlString := "https://www.baidu.com...