Golang中通过go-redis操作Redis
2022/1/24 19:06:14
本文主要是介绍Golang中通过go-redis操作Redis,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
参考地址:https://github.com/go-redis/redis
定义上下文以及连接的相关信息
var ctx = context.Background() var rdb = redis.NewClient(&redis.Options{ Addr: "localhost:6379", })
string
func TestString(t *testing.T) { rdb.Set(ctx, "key", "value", 0) result, err := rdb.Get(ctx, "key").Result() if err != nil { panic(err) } fmt.Println("key", result) }
set
func TestSet(t *testing.T) { addCmd := rdb.SAdd(ctx, "set", "s1", "s2", "s3") fmt.Println(addCmd) stringSliceCmd := rdb.SMembers(ctx, "set") for _,v := range stringSliceCmd.Val() { fmt.Println(v) } }
zset
可以通过zset实现排行榜的功能
func TestZSet(t *testing.T) { intCmd := rdb.ZAdd(ctx, "zset", &redis.Z{Score: 10, Member: "GetcharZp"}, &redis.Z{Score: 50, Member: "B-zero"}, &redis.Z{Score: 20, Member: "GetcharMmc"}) fmt.Println(intCmd) zRange := rdb.ZRange(ctx, "zset", 0, 10) for _, v := range zRange.Val() { fmt.Println(v) } }
hash
func TestHash(t *testing.T) { intCmd := rdb.HSet(ctx, "hash", map[string]string{"k1": "v1", "k2": "v2", "k3": "v3"}) fmt.Println(intCmd) // 通过指定map中的key获取值 getOne := rdb.HGet(ctx, "hash", "k1") fmt.Println(getOne.Val()) all := rdb.HGetAll(ctx, "hash") for key, value := range all.Val() { fmt.Println("key --> ", key, " value --> ", value) } }
list
func TestList(t *testing.T) { intCmd := rdb.LPush(ctx, "list", "l1", "l2", "l3") fmt.Println(intCmd) lRange := rdb.LRange(ctx, "list", 0, 3) // 从最左边开始取数据 for _, v := range lRange.Val() { fmt.Println(v) } }
这篇关于Golang中通过go-redis操作Redis的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-08阿里云Redis项目实战入门教程
- 2024-11-08阿里云Redis资料:新手入门与初级使用指南
- 2024-11-08阿里云Redis教程:新手入门及实用指南
- 2024-11-07阿里云Redis学习入门:新手必读指南
- 2024-11-07阿里云Redis学习入门:从零开始的操作指南
- 2024-11-07阿里云Redis学习:初学者指南
- 2024-11-06阿里云Redis入门教程:轻松搭建与使用指南
- 2024-11-02Redis项目实战:新手入门教程
- 2024-10-22Redis入门教程:轻松掌握数据存储与操作
- 2024-10-22Redis缓存入门教程:快速掌握Redis缓存基础知识