【入门】测试redis操做

最近才想发一篇关于redis对数据的一些简单操做,也是作一些记录,这里不记录如何安装redis,闲话很少说,直接开干!java

先作准备工做:链接redis:ajax

import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;

import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;


public class TestRedis {

    private Jedis jedis;

    @Before
    public void setJedis() {
        // 连接redis服务器
        jedis = new Jedis("127.0.0.1", 6379);
        // 权限认证
        jedis.auth("xulifeng");
        System.out.println("Redis连接成功!");
    }
}

而后咱们在类里面写一个测试操做字符串的方法:redis

public void testString() {
        // 添加数据
        jedis.set("name", "xlf");  // key为name放 入值xlf
        System.out.println("拼接前:" + jedis.get("name"));  // 读取key为name的值

        // 向key为name的值后面加上数据  -- 拼接
        jedis.append("name", " is my name");
        System.out.println("拼接后:" + jedis.get("name"));

        // 删除某个键值对
        jedis.del("name");
        System.out.println("删除后:" + jedis.get("name"));

        // 设置多个键值对
        jedis.mset("name", "xlf", "age", "100", "email", "abcdefg@163.com");
        jedis.incr("age");// 用于将键的整数值递增1。若是键不存在,则在执行操做以前将其设置为0
        System.out.println("name:" + jedis.get("name") + " " +"age:" + jedis.get("age")
                + " " + "email:" + jedis.get("email"));
        jedis.del("name", "age", "email");
        System.out.println("删除后是否还有数据:" + "name:" + jedis.get("name")

运行后能够看到结果:spring

而后咱们在类里在写一个测试操做Map的方法:json

public void testMap() {
        // 添加数据
        Map<String, String> map = new HashMap<>();
        map.put("name", "xlf");
        map.put("age", "100");
        map.put("email", "abcdefg@163.com");
        jedis.hmset("user", map);

        List<String> list = jedis.hmget("user", "name", "age", "email");
        System.out.println(list);

        // 删除map中的某个key
        jedis.hdel("user", "age");
        System.out.println("age:" + jedis.hmget("user", "age"));
        System.out.println("user的键中存放的值的个数" + jedis.hlen("user"));
        System.out.println("是否存在key为user的记录" + jedis.exists("user"));
        System.out.println("user中全部的key" + jedis.hkeys("user"));
        System.out.println("user中全部的value" + jedis.hvals("user"));

        // 拿到key,在迭代器获得值
        Iterator<String> iterator = jedis.hkeys("user").iterator();
        while (iterator.hasNext()) {
            String key = iterator.next();
            System.out.println(key + ":" + jedis.hmget("user", key));
        }
        jedis.del("user");
        System.out.println("删除后是否还存在key为user的记录:" + jedis.exists("user"));
    }

运行后能够看到结果:服务器

而后咱们再写一个测试操做List的方法:mybatis

public void testList() {
        // 移除javaFramwork全部内容
        jedis.del("javaFramwork");
        //存放数据
        jedis.lpush("javaFramwork", "spring");
        jedis.lpush("javaFramwork", "springMVC");
        jedis.lpush("javaFramwork", "mybatis");
        System.out.println("长度" + jedis.llen("javaFramwork"));
        // jedis.llen表示长度,-1表示全部
        System.out.println("javaFramwork:" + jedis.lrange("javaFramwork", 0, -1));

        jedis.del("javaFramwork");
        System.out.println("删除后长度为:" + jedis.llen("javaFramwork"));
        System.out.println(jedis.lrange("javaFramwork", 0, -1));
    }

运行结果为:app

如今咱们写一个set操做的方法:测试

public void testSet() {
        // 添加
        jedis.sadd("user", "xlf");
        jedis.sadd("user", "xu");
        jedis.sadd("user", "are");
        jedis.sadd("user", "ajax");
        jedis.sadd("user", "json");
        // 移除user中的are
        jedis.srem("user", "are");
        System.out.println("user中的全部value:" + jedis.smembers("user"));// 获取全部加入user的value
        System.out.println("ajax是不是user中的元素:" + jedis.sismember("user", "ajax"));
        System.out.println("集合中的随机一个元素:" + jedis.srandmember("user"));
        System.out.println("user中元素的个数" + jedis.scard("user"));
        jedis.del("user");   // 测试完删除数据
    }

运行结果是:code

而后如今咱们再写一个排序:

public void test() {
        jedis.del("number");
        jedis.rpush("number", "4");
        jedis.rpush("number", "5");
        jedis.rpush("number", "3");

        jedis.rpush("number", "6");
        jedis.rpush("number", "2");
        jedis.rpush("number", "1");
        System.out.println(jedis.lrange("number", 0, jedis.llen("number")));
        System.out.println("排序:" + jedis.sort("number"));
        System.out.println(jedis.lrange("number", 0, -1));// 不改变原来的排序
        jedis.del("number");// 测试完删除数据
    }

运行结构以下:

Redis的基本操做能够说是这些,后续会继续完善。

相关文章
相关标签/搜索