增加接口判断key是否存在

This commit is contained in:
Ally Dale
2019-08-21 14:49:27 +08:00
parent 2f4f111f26
commit 748a3663e2

View File

@@ -504,6 +504,28 @@ func (slf *RedisModule) GetMuchStringJSON(keys map[string]interface{}) error {
return nil return nil
} }
//判断一个Key是否存在
func (slf *RedisModule) ExistsKey(key string) (bool, error) {
conn, err := slf.getConn()
if err != nil {
return false, err
}
defer conn.Close()
ret, err := conn.Do("EXISTS", key)
if err != nil {
service.GetLogger().Printf(service.LEVER_ERROR, "ExistsKey fail, reason:%v", err)
return false, err
}
retValue, ok := ret.(int64)
if !ok {
err = errors.New("Func[ExistsKey] Redis Data Error")
return false, err
}
return retValue != 0, nil
}
//DelRedisString redis删除string类型数据 //DelRedisString redis删除string类型数据
//示例:DelRedisString("AAAABTEST1") //示例:DelRedisString("AAAABTEST1")
func (slf *RedisModule) DelString(key string) error { func (slf *RedisModule) DelString(key string) error {
@@ -526,7 +548,7 @@ func (slf *RedisModule) DelString(key string) error {
} }
if retValue == 0 { if retValue == 0 {
err = errors.New("Func[DelRedisString] Delete Key Fail") err = fmt.Errorf("Func[DelRedisString] Delete Key(%s) not exists", key)
return err return err
} }