cutego/pkg/cache/index.go

59 lines
1.3 KiB
Go
Raw Normal View History

2022-03-01 13:50:13 +08:00
package cache
import (
"cutego/pkg/common"
"cutego/pkg/constant"
2023-01-18 17:09:49 +08:00
"cutego/refs"
2022-03-01 13:50:13 +08:00
)
// RemoveList 批量根据Key删除数据
// @Param list []string 键合集
func RemoveList(list []string) {
2023-01-18 17:09:49 +08:00
refs.RedisDB.DELALL(list)
2022-03-01 13:50:13 +08:00
}
// RemoveKey 根据key删除
// @Param key 键
// @Return int 删除的数量
func RemoveCache(key string) int {
2023-01-18 17:09:49 +08:00
del, err := refs.RedisDB.DEL(key)
2022-03-01 13:50:13 +08:00
if err != nil {
common.ErrorLog(err)
}
return del
}
// GetCache 获取缓存数据
// @Param key 键
// @Return string 值
func GetCache(key string) string {
2023-01-18 17:09:49 +08:00
val, err := refs.RedisDB.GET(key)
2022-03-01 13:50:13 +08:00
if err != nil {
common.ErrorLog(constant.RedisConst{}.GetRedisError(), err.Error())
return ""
}
return val
}
// SetCache 设置缓存数据
// @Param key 键
// @Param value 值
// @Return 新增的行数
func SetCache(key string, value interface{}) int {
2023-01-18 17:09:49 +08:00
n, err := refs.RedisDB.SET(key, common.StructToJson(value))
2022-03-01 13:50:13 +08:00
if err != nil {
common.ErrorLog(constant.RedisConst{}.GetRedisError(), err.Error())
return 0
}
return int(n)
}
// SetCache 设置缓存数据, 并指定过期时间
// @Param key 键
// @Param value 值
// @Param sec 过期时间(单位: 秒)
// @Return 新增的行数
func SetCacheTTL(key string, value interface{}, sec int) {
2023-01-18 17:09:49 +08:00
refs.RedisDB.SETEX(key, sec, common.StructToJson(value))
2022-03-01 13:50:13 +08:00
}