go语言操作Redis详细步骤
Posted 我想月薪过万
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言操作Redis详细步骤相关的知识,希望对你有一定的参考价值。
前言:导入开源库
操作字符串
package main
import (
"fmt"
"github.com/garyburd/redigo/redis"
)
func 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
//4、关闭redis连接
defer conn.Close()
//2、通过go 向redis写入数据 string [key-val]
_, err = conn.Do("Set", "name", "tom哈哈")
if err != nil
fmt.Println("redis.Dial err=", err)
return
//3、通过go 向redis读取数据 string [key-val]
r, err := redis.String(conn.Do("Get", "name"))
if err != nil
fmt.Println("redis.Dial err=", err)
return
fmt.Println("操作ok", r)
操作hash
-
一个一个操作
package main
import (
"fmt"
"github.com/garyburd/redigo/redis"
)
func 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
//4、关闭redis连接
defer conn.Close()
//2、通过go 向redis写入数据
_, err = conn.Do("HSet", "user01", "name", "john")
if err != nil
fmt.Println("HSet err=", err)
return
_, err = conn.Do("HSet", "user01", "age", 18)
if err != nil
fmt.Println("HSet err=", err)
return
//3、通过go 向redis读取数据
//因为返回 r 是 interface
//因为 name 对应的值是string,因此我们需要转换
r1, err := redis.String(conn.Do("HGet", "user01", "name"))
if err != nil
fmt.Println("HGet err=", err)
return
r2, err := redis.Int(conn.Do("HGet", "user01", "age"))
if err != nil
fmt.Println("HGet err=", err)
return
fmt.Printf("操作ok r1=%v r2=%v", r1, r2)
-
同时操作多个
package main
import (
"fmt"
"github.com/garyburd/redigo/redis"
)
func 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
//4、关闭redis连接
defer conn.Close()
//2、通过go 向redis写入数据
_, err = conn.Do("HMSet", "user01", "name", "john", "age", 18)
if err != nil
fmt.Println("HSet err=", err)
return
//3、通过go 向redis读取数据
//因为返回 r 是 interface
//因为 name 对应的值是string,因此我们需要转换
r1, err := redis.Strings(conn.Do("HMGet", "user01", "name", "age"))
if err != nil
fmt.Println("HGet err=", err)
return
fmt.Printf("操作ok r1=%v", r1)
以上是关于go语言操作Redis详细步骤的主要内容,如果未能解决你的问题,请参考以下文章