开发者学堂课程【Go 语言核心编程 - 面向对象、文件、单元测试、反射、TCP 编程:Go 操作 Redis(string 类型)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/626/detail/9793
Go 操作 Redis(string 类型)
一、set/get 接口
说明:通过 Golong 添加和获取 key-value 【比如 name-tom~】
fun main() {
//通过 go 向 redis 写入数据和读取数据
//1.链接到 redis
conn, err :=redis.Dial(“tcp”, “127.0.0.1:6379”)
If err !=nil {
fmt.Println(“redis.Dial err=”, err)
return
}
defer conn.Close()
//关闭..
//2. 通过 go 向 redis 写入数据 string [key-val]
_, err = conn.Do(“Set”, “name”, “tomjerry”)
if err != nil{
fmt.Println(“conn succ...”, conn)
return
}
//3. 通过 go 向 redis 读取数据 string [key-val]
r, err := conn.Do(“Get”, “name”, )
if err != nil{
fmt.Println(“set err=.”, err)
return
}
//因为返回的 r 是 interface{ }
//因为 name 对应的值是 string,因此我们需要转换
nameString := r.(string)
fmt.Println(“操作 ok”,nameString)
}
会出现接口转换出错的现象
改为:
r, err := redis.String(conn.Do(“Get”, “name”))
if err != nil{
fmt.Println(“set err=.”, err)
return
}
代码运行正确,但在终端会出现乱码,此现象是正确的
go run main.go
操作 ok
//操作成功说明系统内存在 name
查询:
get name
“tomjerry”