java来操作redis

1.我在maven项目中进行测试,下面是我的pom.xml依赖

<dependency>
          <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.5.2</version>
  </dependency>

应为我的redis是3.2版本的,这里的依赖可以根据实际情况来更改依赖

2.我在测试类中进行准备工作

  Jedis jedis = null;
    @Before
    public void before(){
        jedis = new Jedis("127.0.0.1");
    }

    @After
    public void after(){
        jedis.close();
        jedis = null;
    }

3.进行测试工作

1.hash类型

   @Test
    public void hashMap(){
        HashMap<String,String> actor = new HashMap<>();
        actor.put("jack","jack value");
        actor.put("rose","rose value");
        System.out.println(jedis.hmset("actor", actor));

        System.out.println(jedis.hgetAll("actor"));
        System.out.println(jedis.hget("actor", "jack"));
    }

2.list类型

  @Test
    public void testList(){
        System.out.println(jedis.rpush("person", "xiaohong"));
        System.out.println(jedis.rpush("person", "xiaowen"));
        System.out.println(jedis.rpush("person", "xiaoming"));
        List<String> person = jedis.lrange("person", 0, 100);
        for (String s : person) {
            System.out.println(s);
        }
    }

3.set类型

  @Test
    public void testSet(){
        System.out.println(jedis.sadd("food", "jipai", "doufu", "xiaochi", "hongshaorou"));
        Set<String> food = jedis.smembers("food");
        for (String s : food) {
            System.out.println(s);
        }
    }

4.zset类型

@Test
    public void testZset(){
        System.out.println(jedis.zadd("fenshu", 100, "java"));
        System.out.println(jedis.zadd("fenshu", 99, "html5"));
        System.out.println(jedis.zadd("fenshu", 60, "testing"));
        System.out.println(jedis.zadd("fenshu", 7, "python"));
        Set<String> fenshu = jedis.zrangeByScore("fenshu", 60, 100);
        for (String s : fenshu) {
            System.out.println(s);
        }
    }

5.利用连接池来连接redis

   @Test
    public void testPool(){
        GenericObjectPoolConfig config = new GenericObjectPoolConfig();
        //设置最大的空闲数
        config.setMaxIdle(20);
        //设置最大连接总数
        config.setMaxTotal(50);
        //设置等待时间
        config.setMaxWaitMillis(5);
        List<JedisShardInfo> share = new ArrayList<>();
        share.add(new JedisShardInfo("127.0.0.1",6379));
        ShardedJedisPool pool = new ShardedJedisPool(config,share);
        ShardedJedis j = pool.getResource();
        List<String> person = j.lrange("person", 0, 100);
        for (String s : person) {
            System.out.println(s);

        }
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容