redigo的基本使用一


github地址:

https://github.com/garyburd/redigo

獲取:

go get github.com/garyburd/redigo/redis

鏈接redis:

package main

import (
	"github.com/garyburd/redigo/redis"
	"fmt"
) 
func main(){
	// 鏈接Redis
	r,err := redis.Dial("tcp","127.0.0.1:6379")
	if err != nil {
		fmt.Println("error : ", err)
		return
	}
	defer r.Close()
}

set :

//永不過期
reply,err := r.Do("set","name","張三")
if err != nil {
  fmt.Println("set error : ", err)  
   return
} 
fmt.Println("reply = ",reply)   // reply =  OK
 
expire :
 
// 為給定 key 設置過期時間,以秒計。
ok , err := r.Do("expire","name",3)
if err != nil {
	fmt.Println("expire error : ",err)
	return
}
fmt.Println("ok = ",ok) // ok =  1
 
PERSIST :
 
//移除 key 的過期時間,key 將持久保持。
ok , err := r.Do("PERSIST","name")
if err != nil {
	fmt.Println("PERSIST error : ",err)
	return
}
fmt.Println("ok = ",ok)   //ok =  1

set 設置過期時間 :

// 5秒后過期
reply,err := r.Do("set","name","張三","ex",5)
if err != nil {
	fmt.Println("redis set failed:", err)
}
fmt.Println("reply = ",reply)

get :

// 獲取指定 key 的值
name,err := redis.String(r.Do("get","name"))
if err != nil {
	fmt.Println("redis get failed:", err)
}
fmt.Println("name = ",name)  // name =  張三

mset :

// 批量 MSET
replay,err := r.Do("MSET","name1","張三","name2","李四")
if err != nil {
	fmt.Println("mset error : ",err)
	return
}
fmt.Println("replay = ",replay)

mget :

 

str,err := redis.Strings(r.Do("MGET","name1","name2"))
if err != nil {
	fmt.Println("mget error : ",err)
	return
}
fmt.Println("str = ",str)  // str =  [張三 李四]

del :

// 刪除value
del,err := r.Do("del","name1")
if err != nil {
	fmt.Println("del error : ",err)
	return
}
fmt.Println("del = ",del)  // del =  1
 
exists : 
  
// 檢測value是否存在
ok,err := redis.Bool(r.Do("exists","name1"))
if err != nil {
	fmt.Println("exists error : ",err)
	return
}
fmt.Println("ok = ",ok)  // ok =  false

  

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM