package main

import (
	"fmt"

	"github.com/garyburd/redigo/redis"
)

func main() {
	fmt.Println("hello")
	conn, err := redis.Dial("tcp", "127.0.0.1:6379")
	if err != nil {
		fmt.Println("err = ", err)
		return
	}
	//func (c *conn) Do(cmd string, args ...interface{}) (interface{}, error) {
	//return c.DoWithTimeout(c.readTimeout, cmd, args...)
	//}
	_, err = conn.Do("set", "name", "tomjerry")
	if err != nil {
		fmt.Printf("Set err 出错%d", err)
		return
	}
	fmt.Printf("连接成功%d", conn)
}

 对于这个操作,我们发现他的返回结果并不是那么重要,只是整个设置操作进行了对于redis的数据设置。所以他的返回值并不是那么重要。

func (c *conn) Do(cmd string, args ...interface{}) (interface{}, error) {
	return c.DoWithTimeout(c.readTimeout, cmd, args...)
}

 

 接下来在redis中可以进行查询,发现有了刚才存的tomjerry

在redis中有Sring类型的强制转换所以不用在进行类型的转化,可以直接得到这个string类型的数据。 

	r, err := redis.String(conn.Do("Get", "name"))
	if err != nil {
		fmt.Println("set err=", err)
		return
	}
	//因为返回r是 interface{]}
	//因为name对应的值是string ,因此我们需要转换//namestring := r.(string)
	fmt.Println("操作ok ", r)

 

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐