package lxredis import redigo "github.com/garyburd/redigo/redis" // hash // 创建时间:2023/12/14 14:21 // 创建人:lixu // HashExists 存在的否 func (con *LXredis) HashExists(minikey string) (isxists bool, err error) { var ( nname string nums int64 ) if con.Prefix != "" { nname = con.Prefix + con.Name } else { nname = LXREDISCONFIG.Prefix + con.Name } redis := GetLxRedis() defer redis.Close() if con.Db != "" { if _, err = redis.Do("SELECT", con.Db); err != nil { return } } nums, err = redigo.Int64(redis.Do("HEXISTS", nname, minikey)) if err != nil { return } if nums < 1 { return } isxists = true return } // HashSet 设置 func (con *LXredis) HashSet(minikey string) (err error) { var ( nname string ) if con.Prefix != "" { nname = con.Prefix + con.Name } else { nname = LXREDISCONFIG.Prefix + con.Name } redis := GetLxRedis() defer redis.Close() if con.Db != "" { if _, err = redis.Do("SELECT", con.Db); err != nil { return } } _, err = redis.Do("HMSET", nname, minikey, con.Val) return } // HashGet 获取 func (con *LXredis) HashGet(minikey string) (content string, err error) { var ( nname string ) if con.Prefix != "" { nname = con.Prefix + con.Name } else { nname = LXREDISCONFIG.Prefix + con.Name } redis := GetLxRedis() defer redis.Close() if con.Db != "" { if _, err = redis.Do("SELECT", con.Db); err != nil { return } } content, err = redigo.String(redis.Do("HGET", nname, minikey)) return } // HashGetAll 获取 func (con *LXredis) HashGetAll() (content []string, err error) { var ( nname string ) if con.Prefix != "" { nname = con.Prefix + con.Name } else { nname = LXREDISCONFIG.Prefix + con.Name } redis := GetLxRedis() defer redis.Close() if con.Db != "" { if _, err = redis.Do("SELECT", con.Db); err != nil { return } } content, err = redigo.Strings(redis.Do("HGETALL", nname)) return } // HashKeys 获取 func (con *LXredis) HashKeys() (ks []string, err error) { var ( nname string ) if con.Prefix != "" { nname = con.Prefix + con.Name } else { nname = LXREDISCONFIG.Prefix + con.Name } redis := GetLxRedis() defer redis.Close() if con.Db != "" { if _, err = redis.Do("SELECT", con.Db); err != nil { return } } ks, err = redigo.Strings(redis.Do("HKEYS", nname)) return } // HashDelete 删除 func (con *LXredis) HashDelete(minikey string) (islock bool, err error) { var nname string if con.Prefix != "" { nname = con.Prefix + con.Name } else { nname = LXREDISCONFIG.Prefix + con.Name } redis := GetLxRedis() defer redis.Close() if con.Db != "" { if _, err = redis.Do("SELECT", con.Db); err != nil { return } } _, err = redis.Do("HDEL", nname, minikey) return }