Update redismodule.go

redismodule 添加 struct 2 hash
This commit is contained in:
comin2013
2021-04-22 18:38:05 +08:00
committed by GitHub
parent 5b8360abfc
commit 350bffda8f

View File

@@ -185,6 +185,39 @@ func (m *RedisModule) setStringByExpire(key, value, expire interface{}) error {
return nil
}
func (m *RedisModule) HSetStruct(key string, val interface{}) error {
conn, err := m.getConn()
if err != nil {
return err
}
defer conn.Close()
_, err = conn.Do("HSET", redis.Args{}.Add(key).AddFlat(val)...)
if err != nil {
return err
}
return nil
}
func (m *RedisModule) HGetStruct(key string, out_val interface{}) error {
conn, err := m.getConn()
if err != nil {
return err
}
defer conn.Close()
v, err := redis.Values(conn.Do("HGETALL", key))
if err != nil {
return err
}
err = redis.ScanStruct(v, out_val)
if err != nil {
return err
}
return nil
}
func (m *RedisModule) SetStringMap(mapInfo map[interface{}]interface{}) (err error) {
err = m.setMuchStringByExpire(mapInfo, "-1")
return