您当前的位置:学无止境 > go简单操作redis网站首页学无止境
go简单操作redis
发布时间:2024-05-29 16:00:44编辑:三青查看次数:629
先启动redis服务
redis第三方库文档 https://pkg.go.dev/github.com/go-redis/redis/v8#section-readme
下载redis第三方库
go get github.com/go-redis/redis/v8
内容
package main import ( "context" "fmt" "github.com/go-redis/redis/v8" "log" ) var rdb *redis.Client var ctx = context.Background() func init() { rdb = redis.NewClient(&redis.Options{ Addr: "localhost:6379", Password: "", // no password set DB: 0, // use default DB }) } func doString() { //err := rdb.Set(ctx, "key", "value11", time.Second*10).Err() err := rdb.Set(ctx, "key", "value11", 0).Err() if err != nil { log.Fatal(err) } //time.Sleep(2 * time.Second) val, err := rdb.Get(ctx, "key").Result() if err != nil { log.Fatal(err) } fmt.Println("key", val) } func doList() { err := rdb.LPush(ctx, "keylist", 1, 3, 5, 7, 9, 11).Err() if err != nil { log.Fatal(err) } val, err := rdb.LRange(ctx, "keylist", 1, 3).Result() if err != nil { log.Fatal(err) } fmt.Println(val) val2, err := rdb.LPop(ctx, "keylist").Result() if err != nil { log.Fatal(err) } fmt.Println(val2) val3, err := rdb.RPop(ctx, "keylist").Result() if err != nil { log.Fatal(err) } fmt.Println(val3) } func doHash() { err := rdb.HSet(ctx, "userinfo", "name", "sanqing").Err() if err != nil { log.Fatal(err) } err = rdb.HSet(ctx, "userinfo", "age", 18).Err() if err != nil { log.Fatal(err) } val1, err := rdb.HGet(ctx, "userinfo", "age").Result() if err != nil { log.Fatal(err) } fmt.Println(val1) val2, err := rdb.HGet(ctx, "userinfo", "name").Result() if err != nil { log.Fatal(err) } fmt.Println(val2) } func main() { doString() doList() doHash() }
关键字词:go,redis
评论: