redis增加集合操作功能
This commit is contained in:
parent
a490fea952
commit
99c261ca91
|
|
@ -80,6 +80,46 @@ func Get(key string) interface{} {
|
|||
return reply
|
||||
}
|
||||
|
||||
//集合Set增加元素
|
||||
func SetAdd(key string, data ...interface{}) error {
|
||||
conn := pool.Get()
|
||||
defer conn.Close()
|
||||
var err error
|
||||
for _, d := range data {
|
||||
_, e := conn.Do("SADD", key, d)
|
||||
if e != nil {
|
||||
err = e
|
||||
break
|
||||
}
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
//集合Set删除元素
|
||||
func SetRem(key string, data ...interface{}) error {
|
||||
conn := pool.Get()
|
||||
defer conn.Close()
|
||||
|
||||
var err error
|
||||
for _, d := range data {
|
||||
_, e := conn.Do("SREM", key, d)
|
||||
if e != nil {
|
||||
err = e
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
//集合Set判断是否存在成员member,结果.(int64)==1表示存在
|
||||
func SetIsMember(key string, member interface{}) (interface{}, error) {
|
||||
conn := pool.Get()
|
||||
defer conn.Close()
|
||||
|
||||
return conn.Do("SISMEMBER", key, member)
|
||||
}
|
||||
|
||||
//设置一个值
|
||||
func Set(key string, val interface{}, timeout time.Duration) error {
|
||||
data, err := json.Marshal(val)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,36 @@
|
|||
package redis
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestRedis(t *testing.T) {
|
||||
Init(&Config{
|
||||
Host: "192.168.0.254:6379",
|
||||
Password: "",
|
||||
Database: 0,
|
||||
MaxIdle: 3,
|
||||
MaxActive: 10,
|
||||
IdleTimeout: 600,
|
||||
})
|
||||
|
||||
err := SetAdd("aaa", "aaa", "aa1", "aa2", "aa4", "aa3")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
Expire("aaa", 100)
|
||||
ret, err := SetIsMember("aaa", "aa1")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
fmt.Println(ret, ret.(int64))
|
||||
err = SetRem("aaa", "aa2", "aa3")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
err = Delete("aaa")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue