Go后台开发
总结Go后台开发中的应用。
空间法则
这个作者很懒,什么都没留下…
展开
-
Golang中的反射
Go 是一种静态语言,具有良好的反射支持。 本文将学习反射标准包中提供的反射功能。Method 方法:获取对象中导出的方法个数,通过编译可以获取每一个方法。如下获取http.Client中的方法:client := &http.Client{}// 获取对象对应的Typetc := reflect.TypeOf(client)// 遍历对象中所有的方法,通过NumMethod方法获取总个数for i := 0; i < tc.NumMethod(); i++ { fmt.Pr原创 2021-11-26 16:56:07 · 805 阅读 · 0 评论 -
go-reids使用lua脚本实现的一个分布式锁
直接上代码:var rdb *redis.Clientvar mutex sync.Mutex// Lock 上锁func Lock(ctx context.Context, lockName string, timeout string, uid string) bool { mutex.Lock() defer mutex.Unlock() lockLua := `if (redis.call('exists', KEYS[1]) == 0) then redis.call('h原创 2021-09-28 19:54:11 · 137 阅读 · 0 评论 -
Golang 字符数组换字符串
在Go语言中,我们经常在字符串和切片之间进行转换,如:var a = "helloworld"var data = []byte(a) // 字符串转切片var b = string(data) // 切片转字符串以上代码相信大部分人不用思考都能理解,那么如何在byte数组和字符串之间进行转换呢?如下代码打印得结果是?func main() { ip := "192.168.1.1" var data0 [32]byte data := []byte(ip) copy(data0[:],原创 2021-09-27 18:05:24 · 3025 阅读 · 0 评论