package main
import (
"encoding/json"
"fmt"
"time"
"github.com/go-redis/redis"
)
type guo struct {
Name string `json:"name"`
Age int `json:"age"`
}
func (g *guo) MarshalBinary() (data []byte, err error) {
return json.Marshal(g)
}
func (g *guo) UnmarshalBinary(data []byte) (err error) {
return json.Unmarshal(data, g)
}
func initClient() *redis.Client {
return redis.NewClient(&redis.Options{
Addr: "127.0.0.1:6379",
DB: 2,
MinIdleConns: 5,
DialTimeout: 5 * time.Second,
WriteTimeout: 5 * time.Second,
PoolTimeout: 5 * time.Second,
MaxConnAge: 0,
})
}
func main() {
rd := initClient()
my := &guo{
Name: "shuaijie",
Age: 30,
}
if err := rd.Set("my", my, 0).Err(); err != nil {
panic(err)
}
out := &guo{}
if err := rd.Get("my").Scan(out); err != nil {
panic(err)
}
fmt.Println(out)
}
golang 将结构体存入redis
最新推荐文章于 2023-05-19 21:55:18 发布